changeset 2403:3049aafc269d

Improve AQ/LQ parsing robustness slightly.
author Matti Hamalainen <ccr@tnsp.org>
date Wed, 10 Nov 2021 09:40:45 +0200
parents 0a4dd01fe74a
children 7bc30009ed14
files src/mkloc.c
diffstat 1 files changed, 5 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/src/mkloc.c	Wed Nov 10 09:27:29 2021 +0200
+++ b/src/mkloc.c	Wed Nov 10 09:40:45 2021 +0200
@@ -973,15 +973,16 @@
 
         while (*ptr != 0)
         {
-            if (ptr[0] == 'A' && ptr[1] == 'Q' && th_isspace(ptr[2]))
+            char *start;
+            if (ptr[0] == 'A' && ptr[1] == 'Q' && th_isspace(ptr[2]) &&
+                (start = strchr(ptr + 3, '"')) != NULL)
             {
-                char *start = strchr(ptr + 3, '"');
                 ptr = addQuestLink(&buf, &bufSize, &bufLen, ptr, start, strchr(start + 1, '"'));
             }
             else
-            if (ptr[0] == 'L' && ptr[1] == 'Q' && th_isdigit(ptr[2]))
+            if (ptr[0] == 'L' && ptr[1] == 'Q' && th_isdigit(ptr[2]) &&
+                (start = strchr(ptr + 3, '"')) != NULL)
             {
-                char *start = strchr(ptr + 3, '"');
                 ptr = addQuestLink(&buf, &bufSize, &bufLen, ptr, start, start ? strchr(start + 1, '"') : NULL);
             }