diff options
-rwxr-xr-x | gerbolyze/gerbolyze.py | 4 | ||||
-rw-r--r-- | svg-flatten/src/main.cpp | 12 |
2 files changed, 12 insertions, 4 deletions
diff --git a/gerbolyze/gerbolyze.py b/gerbolyze/gerbolyze.py index c3107eb..b55c6e8 100755 --- a/gerbolyze/gerbolyze.py +++ b/gerbolyze/gerbolyze.py @@ -426,7 +426,7 @@ def load_side(side_matches): for layer, elems in layers.items(): if len(elems) > 1 and layer != 'drill': - raise SystemError(f'Multiple files found for layer {layer}: {", ".join(side_matches[layer]) }') + raise SystemError(f'Multiple files found for layer {layer}: {", ".join(str(x) for x in side_matches[layer]) }') unitses = set(layer.cam_source.units for items in layers.values() for _path, layer in items) if len(unitses) != 1: @@ -551,6 +551,8 @@ def svg_to_gerber(infile, outfile, layer=None, trace_space:'mm'=0.1, vectorizer= candidates = [ # somewhere in $PATH 'svg-flatten', + # in user-local pip installation + Path.home() / '.local' / 'bin' / 'svg-flatten', # next to our current python interpreter (e.g. in virtualenv str(Path(sys.executable).parent / 'svg-flatten'), # next to this python source file in the development repo diff --git a/svg-flatten/src/main.cpp b/svg-flatten/src/main.cpp index 2b996f3..d96785b 100644 --- a/svg-flatten/src/main.cpp +++ b/svg-flatten/src/main.cpp @@ -352,16 +352,22 @@ int main(int argc, char **argv) { int usvg_rc=-1; for (int i=0; i<3; i++) { const char *usvg_envvar; - if (i == 0) { + switch (i) { + case 0: if ((usvg_envvar = getenv("USVG")) == NULL) { continue; } else { command_line[0] = "usvg"; } - } else if (i == 1) { + break; + + case 1: command_line[0] = "usvg"; - } else { + break; + + case 2: command_line[0] = loc_in_home.c_str(); + break; } struct subprocess_s subprocess; |