From 4a2a2250f9470e28e83c9e5db900e8ff71dfc416 Mon Sep 17 00:00:00 2001
From: AlexeyAB <alexeyab84@gmail.com>
Date: Wed, 20 Jun 2018 23:42:39 +0000
Subject: [PATCH] Fixed removing escape symbols for command line arguments

---
 src/utils.h   |    1 +
 src/darknet.c |    2 +-
 src/utils.c   |   14 ++++++++++++++
 3 files changed, 16 insertions(+), 1 deletions(-)

diff --git a/src/darknet.c b/src/darknet.c
index 39f9522..f6d61c0 100644
--- a/src/darknet.c
+++ b/src/darknet.c
@@ -357,7 +357,7 @@
 	int i;
 	for (i = 0; i < argc; ++i) {
 		if (!argv[i]) continue;
-		strip(argv[i]);
+		strip_args(argv[i]);
 	}
 
     //test_resize("data/bad.jpg");
diff --git a/src/utils.c b/src/utils.c
index cafbeb5..5dca212 100644
--- a/src/utils.c
+++ b/src/utils.c
@@ -296,6 +296,20 @@
     s[len-offset] = '\0';
 }
 
+
+void strip_args(char *s)
+{
+	size_t i;
+	size_t len = strlen(s);
+	size_t offset = 0;
+	for (i = 0; i < len; ++i) {
+		char c = s[i];
+		if (c == '\t' || c == '\n' || c == '\r' || c == 0x0d || c == 0x0a) ++offset;
+		else s[i - offset] = c;
+	}
+	s[len - offset] = '\0';
+}
+
 void strip_char(char *s, char bad)
 {
     size_t i;
diff --git a/src/utils.h b/src/utils.h
index e2afba4..58cea93 100644
--- a/src/utils.h
+++ b/src/utils.h
@@ -45,6 +45,7 @@
 void malloc_error();
 void file_error(char *s);
 void strip(char *s);
+void strip_args(char *s);
 void strip_char(char *s, char bad);
 void top_k(float *a, int n, int k, int *index);
 list *split_str(char *s, char delim);

--
Gitblit v1.10.0