]> git.ipfire.org Git - thirdparty/cups.git/commitdiff
Fix ippAttributeString for octetString values.
authormike <mike@7a7537e8-13f0-0310-91df-b6672ffda945>
Fri, 1 Feb 2013 15:49:05 +0000 (15:49 +0000)
committermike <mike@7a7537e8-13f0-0310-91df-b6672ffda945>
Fri, 1 Feb 2013 15:49:05 +0000 (15:49 +0000)
git-svn-id: svn+ssh://src.apple.com/svn/cups/cups.org/trunk@10856 7a7537e8-13f0-0310-91df-b6672ffda945

cups/ipp-support.c

index 3b4d66ed210ddd2587509be45a568466cfe94c12..92501dae9e26dcc130916887686eeb16e5a3dd8b 100644 (file)
@@ -561,7 +561,8 @@ ippAttributeString(
   char         *bufptr,                /* Pointer into buffer */
                *bufend,                /* End of buffer */
                temp[256];              /* Temporary string */
-  const char   *ptr;                   /* Pointer into string */
+  const char   *ptr,                   /* Pointer into string */
+               *end;                   /* Pointer to end of string */
   _ipp_value_t *val;                   /* Current value */
 
 
@@ -717,7 +718,8 @@ ippAttributeString(
           break;
 
       case IPP_TAG_STRING :
-          for (ptr = val->string.text; *ptr; ptr ++)
+          for (ptr = val->unknown.data, end = ptr + val->unknown.length;
+               ptr < end; ptr ++)
           {
             if (*ptr == '\\' || _cups_isspace(*ptr))
             {
@@ -1698,8 +1700,7 @@ ippEnumString(const char *attrname,       /* I - Attribute name */
   else if (!strcmp(attrname, "job-state") &&
           enumvalue >= IPP_JOB_PENDING && enumvalue <= IPP_JOB_COMPLETED)
     return (ipp_job_states[enumvalue - IPP_JOB_PENDING]);
-  else if (!strcmp(attrname, "operations-supported") ||
-           !strcmp(attrname, "limit-operations-supported"))
+  else if (!strcmp(attrname, "operations-supported"))
     return (ippOpString((ipp_op_t)enumvalue));
   else if ((!strcmp(attrname, "orientation-requested") ||
             !strcmp(attrname, "orientation-requested-actual") ||