Commit 9a38ee073 for imagemagick.org

commit 9a38ee07390eda070500274bb7a30a88c6eb090e
Author: Cristy <urban-warrior@imagemagick.org>
Date:   Fri Jul 3 17:42:47 2026 -0400

    check for EOF

diff --git a/coders/pnm.c b/coders/pnm.c
index 8481f5964..32f0d2938 100644
--- a/coders/pnm.c
+++ b/coders/pnm.c
@@ -402,7 +402,11 @@ static Image *ReadPNMImage(const ImageInfo *image_info,ExceptionInfo *exception)
         for (c=ReadBlobByte(image); c != EOF; c=ReadBlobByte(image))
         {
           while (isspace((int) ((unsigned char) c)) != 0)
+          {
             c=ReadBlobByte(image);
+            if (c == EOF)
+              break;
+          }
           if (c == '#')
             {
               /*
@@ -412,9 +416,15 @@ static Image *ReadPNMImage(const ImageInfo *image_info,ExceptionInfo *exception)
               {
                 c=PNMComment(image,&comment_info,exception);
                 c=ReadBlobByte(image);
+                if (c == EOF)
+                  break;
               }
               while (isspace((int) ((unsigned char) c)) != 0)
+              {
                 c=ReadBlobByte(image);
+                if (c == EOF)
+                  break;
+              }
             }
           p=keyword;
           do
@@ -422,18 +432,26 @@ static Image *ReadPNMImage(const ImageInfo *image_info,ExceptionInfo *exception)
             if ((size_t) (p-keyword) < (MagickPathExtent-1))
               *p++=(char) c;
             c=ReadBlobByte(image);
+            if (c == EOF)
+              break;
           } while (isalnum((int) ((unsigned char) c)));
           *p='\0';
           if (LocaleCompare(keyword,"endhdr") == 0)
             break;
           while (isspace((int) ((unsigned char) c)) != 0)
+          {
             c=ReadBlobByte(image);
+            if (c == EOF)
+              break;
+          }
           p=value;
           while (isalnum((int) ((unsigned char) c)) || (c == '_'))
           {
             if ((size_t) (p-value) < (MagickPathExtent-1))
               *p++=(char) c;
             c=ReadBlobByte(image);
+            if (c == EOF)
+              break;
           }
           *p='\0';
           /*