From: mike Date: Mon, 30 Apr 2007 18:21:52 +0000 (+0000) Subject: Sync length check fix. X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=ffa62fa70a53e56ebf3ccc4618d18315cb0ddea7;p=thirdparty%2Fcups.git Sync length check fix. git-svn-id: svn+ssh://src.apple.com/svn/cups/cups.org/trunk@6491 7a7537e8-13f0-0310-91df-b6672ffda945 --- diff --git a/backend/usb-darwin.c b/backend/usb-darwin.c index 6eccecff95..9bfb113e2a 100644 --- a/backend/usb-darwin.c +++ b/backend/usb-darwin.c @@ -598,16 +598,6 @@ static Boolean list_device_callback(void *refcon, io_service_t obj) else strcpy(modelstr + 1, "Printer"); - /* - * Fix common HP 1284 bug... - */ - - if (!strcasecmp(makestr, "Hewlett-Packard")) - strcpy(makestr, "HP"); - - if (!strncasecmp(modelstr + 1, "hp ", 3)) - _cups_strcpy(modelstr + 1, modelstr + 4); - optionsstr[0] = '\0'; if (serial != NULL) { @@ -622,6 +612,16 @@ static Boolean list_device_callback(void *refcon, io_service_t obj) httpAssembleURI(HTTP_URI_CODING_ALL, uristr, sizeof(uristr), "usb", NULL, makestr, 0, modelstr); strncat(uristr, optionsstr, sizeof(uristr)); + /* + * Fix common HP 1284 bug... + */ + + if (!strcasecmp(makestr, "Hewlett-Packard")) + strcpy(makestr, "HP"); + + if (!strncasecmp(modelstr + 1, "hp ", 3)) + _cups_strcpy(modelstr + 1, modelstr + 4); + printf("direct %s \"%s %s\" \"%s %s USB\" \"%s\"\n", uristr, makestr, &modelstr[1], makestr, &modelstr[1], idstr); @@ -654,7 +654,7 @@ static Boolean find_device_callback(void *refcon, io_service_t obj) copy_deviceinfo(idString, &make, &model, &serial); if (CFStringCompare(make, userData->make, kCFCompareCaseInsensitive) == kCFCompareEqualTo) { if (CFStringCompare(model, userData->model, kCFCompareCaseInsensitive) == kCFCompareEqualTo) { - if (userData->serial != NULL) { + if (userData->serial != NULL && CFStringGetLength(userData->serial) > 0 ) { if (serial != NULL && CFStringCompare(serial, userData->serial, kCFCompareCaseInsensitive) == kCFCompareEqualTo) { IOObjectRetain(obj); userData->printerObj = obj;