diff --git a/libavformat/http.c b/libavformat/http.c
index 1eb716b1071eb560911e84d0a6803094d5435945..d3c0b7e659dd1921c1995822fb8661a9f8f5eea6 100644
--- a/libavformat/http.c
+++ b/libavformat/http.c
@@ -714,7 +714,7 @@ static int process_line(URLContext *h, char *line, int line_count,
         if (s->is_connected_server) {
             // HTTP method
             method = p;
-            while (!av_isspace(*p))
+            while (*p && !av_isspace(*p))
                 p++;
             *(p++) = '\0';
             av_log(h, AV_LOG_TRACE, "Received method: %s\n", method);
@@ -751,7 +751,7 @@ static int process_line(URLContext *h, char *line, int line_count,
             while (av_isspace(*p))
                 p++;
             version = p;
-            while (!av_isspace(*p))
+            while (*p && !av_isspace(*p))
                 p++;
             *p = '\0';
             if (av_strncasecmp(version, "HTTP/", 5)) {