Hi,

Could this be caused by a profile with very long manufacture string?

const char* LCMSEXPORT cmsTakeManufacturer(cmsHPROFILE hProfile)
{
    static char Manufacturer[512] = "";
    Manufacturer[0] = 0;
    if (cmsIsTag(hProfile, icSigDeviceMfgDescTag)) {
       cmsReadICCText(hProfile, icSigDeviceMfgDescTag, Manufacturer);
    }
    return Manufacturer;
}

and cmsReadICCText doesn't check if there is enough space in "char *Name", so if the manufacturer string is more than 512 bytes....?

int LCMSEXPORT cmsReadICCText(cmsHPROFILE hProfile, icTagSignature sig, char *Name)
does:
CopyMemory(Name, Icc -> TagPtrs[n], Icc -> TagSizes[n]);



(from version 1.13)

----
   - Peter Speck



-------------------------------------------------------
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink & Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
_______________________________________________
Lcms-user mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/lcms-user

Reply via email to