From 5664261b832850f0f630c1a4d752364210c66988 Mon Sep 17 00:00:00 2001 From: Mike Gevaert Date: Wed, 27 Aug 2025 13:44:06 +0200 Subject: [PATCH] allow section type of 0 (ie: unknown/undefined) in SWC --- src/readers/morphologySWC.cpp | 2 +- tests/test_1_swc.py | 10 ++++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/src/readers/morphologySWC.cpp b/src/readers/morphologySWC.cpp index 80a87bbe..e778a92c 100644 --- a/src/readers/morphologySWC.cpp +++ b/src/readers/morphologySWC.cpp @@ -352,7 +352,7 @@ class SWCBuilder throw RawDataError(err_.ERROR_SELF_PARENT(sample.id)); } - if (sample.type >= SECTION_OUT_OF_RANGE_START || sample.type <= 0) { + if (sample.type >= SECTION_OUT_OF_RANGE_START || sample.type < 0) { details::ErrorMessages err_(path_); throw RawDataError( err_.ERROR_UNSUPPORTED_SECTION_TYPE(sample.lineNumber, sample.type)); diff --git a/tests/test_1_swc.py b/tests/test_1_swc.py index 413a6e6d..0fed3b3a 100644 --- a/tests/test_1_swc.py +++ b/tests/test_1_swc.py @@ -660,3 +660,13 @@ def test_WarningHandlerCollector(): Morphology("", extension="swc", warning_handler=warnings1) assert len(warnings0.get_all()) == 2 assert len(warnings1.get_all()) == 1 + + +def test_0_defined(): + contents =(''' +1 1 5 2 2 3 -1 +2 0 4 2 1 1 1 +''') + m = Morphology(contents, "swc") + assert m.sections[0].type == morphio.SectionType.undefined +