aboutsummaryrefslogtreecommitdiffstats
path: root/main/libc0.9.32/0003-config-parser-always-initialize-line-pointer.patch
diff options
context:
space:
mode:
Diffstat (limited to 'main/libc0.9.32/0003-config-parser-always-initialize-line-pointer.patch')
-rw-r--r--main/libc0.9.32/0003-config-parser-always-initialize-line-pointer.patch30
1 files changed, 30 insertions, 0 deletions
diff --git a/main/libc0.9.32/0003-config-parser-always-initialize-line-pointer.patch b/main/libc0.9.32/0003-config-parser-always-initialize-line-pointer.patch
new file mode 100644
index 0000000000..171eeee0bf
--- /dev/null
+++ b/main/libc0.9.32/0003-config-parser-always-initialize-line-pointer.patch
@@ -0,0 +1,30 @@
+From 1f134a1d5456148e212dbe6eb69ce7bee11dc1fb Mon Sep 17 00:00:00 2001
+From: Natanael Copa <natanael.copa@gmail.com>
+Date: Thu, 16 Sep 2010 11:51:21 +0000
+Subject: [PATCH 3/3] config parser: always initialize line pointer
+
+We must always initialize line pointer since data pointer might
+have changed due to a realloc (in getserv.c for example).
+
+Signed-off-by: Natanael Copa <natanael.copa@gmail.com>
+---
+ libc/misc/internals/parse_config.c | 3 +--
+ 1 files changed, 1 insertions(+), 2 deletions(-)
+
+diff --git a/libc/misc/internals/parse_config.c b/libc/misc/internals/parse_config.c
+index 6734f35..6d3b6f4 100644
+--- a/libc/misc/internals/parse_config.c
++++ b/libc/misc/internals/parse_config.c
+@@ -192,8 +192,7 @@ again:
+ return 0;
+ parser->allocated |= 1;
+ } /* else { assert(parser->data_len > 0); } */
+- if (parser->line == NULL)
+- parser->line = parser->data + parser->data_len;
++ parser->line = parser->data + parser->data_len;
+ /*config_free_data(parser);*/
+
+ /* Read one line (handling continuations with backslash) */
+--
+1.7.2.3
+