Index: cgi-bin/admin.c =================================================================== --- cgi-bin/admin.c (revision 8342) +++ cgi-bin/admin.c (working copy) @@ -1057,9 +1057,10 @@ return; } - else if (!file && !cgiGetVariable("PPD_NAME")) + else if (!file && + (!cgiGetVariable("PPD_NAME") || cgiGetVariable("SELECT_MAKE"))) { - if (modify) + if (modify && !cgiGetVariable("SELECT_MAKE")) { /* * Get the PPD file... @@ -1136,7 +1137,7 @@ if ((var = cgiGetVariable("CURRENT_MAKE")) == NULL) var = cgiGetVariable("PPD_MAKE"); - if (var) + if (var && !cgiGetVariable("SELECT_MAKE")) { const char *make_model; /* Make and model */ @@ -1144,8 +1145,7 @@ ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_TEXT, "ppd-make", NULL, var); - if ((make_model = cgiGetVariable("CURRENT_MAKE_AND_MODEL")) != NULL && - !cgiGetVariable("SELECT_MAKE")) + if ((make_model = cgiGetVariable("CURRENT_MAKE_AND_MODEL")) != NULL) ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_TEXT, "ppd-make-and-model", NULL, make_model); }