Cleanup AIX code a little.
authorJay Krell <jaykrell@ntdev.microsoft.com>
Sat, 8 Jun 2019 01:06:22 +0000 (18:06 -0700)
committerLarry Ewing <lewing@microsoft.com>
Fri, 14 Jun 2019 23:43:36 +0000 (18:43 -0500)
Commit migrated from https://github.com/mono/mono/commit/1fe336691eca6811173731b8b30367fb2b64d9d1

src/mono/mono/utils/mono-dl.c

index a307ee2..473222b 100644 (file)
@@ -43,7 +43,7 @@ static gboolean
 is_library_ar_archive (char *path)
 {
        int lfd, readret;
-       char magic[SAIAMAG + 1];
+       char magic [SAIAMAG];
        lfd = open (path, O_RDONLY);
 
        /* don't assume it's an archive on error */
@@ -52,16 +52,10 @@ is_library_ar_archive (char *path)
 
        readret = read (lfd, magic, SAIAMAG);
        close (lfd);
-       if (readret != SAIAMAG)
-               return FALSE;
-
-       magic [SAIAMAG] = '\0';
-
        /* check for equality with either version of header */
-       if (strncmp(magic, AIAMAG, SAIAMAG) == 0 ||
-           strncmp(magic, AIAMAGBIG, SAIAMAG) == 0)
-               return TRUE;
-       return FALSE;
+       return readret == SAIAMAG &&
+               (memcmp (magic, AIAMAG, SAIAMAG) == 0 ||
+                memcmp (magic, AIAMAGBIG, SAIAMAG) == 0);
 }
 #endif