8009654: Improve stability of cmsnamed
authorjgodinez
Wed, 27 Mar 2013 11:38:46 -0700
changeset 18209 6d003de63e55
parent 18208 5c6150ffbc80
child 18210 662eb8b3dfb5
8009654: Improve stability of cmsnamed Reviewed-by: bae, mschoene, prr Contributed-by: jia-hong.chen@oracle.com
jdk/src/share/native/sun/java2d/cmm/lcms/cmsnamed.c
--- a/jdk/src/share/native/sun/java2d/cmm/lcms/cmsnamed.c	Wed Mar 27 13:29:22 2013 +0100
+++ b/jdk/src/share/native/sun/java2d/cmm/lcms/cmsnamed.c	Wed Mar 27 11:38:46 2013 -0700
@@ -517,9 +517,9 @@
     while (v -> Allocated < n)
         GrowNamedColorList(v);
 
-    strncpy(v ->Prefix, Prefix, sizeof(v ->Prefix));
-    strncpy(v ->Suffix, Suffix, sizeof(v ->Suffix));
-    v->Prefix[32] = v->Suffix[32] = 0;
+    strncpy(v ->Prefix, Prefix, sizeof(v ->Prefix) - 1);
+    strncpy(v ->Suffix, Suffix, sizeof(v ->Suffix) - 1);
+    v->Prefix[sizeof(v ->Prefix) - 1] = v->Suffix[sizeof(v ->Suffix) - 1] = 0;
 
     v -> ColorantCount = ColorantCount;
 
@@ -577,9 +577,10 @@
     if (Name != NULL) {
 
         strncpy(NamedColorList ->List[NamedColorList ->nColors].Name, Name,
-                    sizeof(NamedColorList ->List[NamedColorList ->nColors].Name));
+                    sizeof(NamedColorList ->List[NamedColorList ->nColors].Name) - 1);
 
-        NamedColorList ->List[NamedColorList ->nColors].Name[cmsMAX_PATH-1] = 0;
+        NamedColorList ->List[NamedColorList ->nColors].
+            Name[sizeof(NamedColorList ->List[NamedColorList ->nColors].Name) - 1] = 0;
 
     }
     else