--- cups-1.1.23/scheduler/classes.c.slow 2005-06-16 09:30:40.000000000 +0100 +++ cups-1.1.23/scheduler/classes.c 2005-06-16 09:36:10.000000000 +0100 @@ -158,29 +158,29 @@ c->num_printers --; if (i < c->num_printers) - memcpy(c->printers + i, c->printers + i + 1, - (c->num_printers - i) * sizeof(printer_t *)); - } + memmove(c->printers + i, c->printers + i + 1, + (c->num_printers - i) * sizeof(printer_t *)); - /* - * Recompute the printer type mask as needed... - */ + /* + * Recompute the printer type mask as needed... + */ - if (c->num_printers > 0) - { - type = c->type & (CUPS_PRINTER_CLASS | CUPS_PRINTER_IMPLICIT); - c->type = ~CUPS_PRINTER_REMOTE; + if (c->num_printers > 0) + { + type = c->type & (CUPS_PRINTER_CLASS | CUPS_PRINTER_IMPLICIT); + c->type = ~CUPS_PRINTER_REMOTE; - for (i = 0; i < c->num_printers; i ++) - c->type &= c->printers[i]->type; + for (i = 0; i < c->num_printers; i ++) + c->type &= c->printers[i]->type; - c->type |= type; + c->type |= type; - /* - * Update the IPP attributes... - */ + /* + * Update the IPP attributes... + */ - SetPrinterAttrs(c); + SetPrinterAttrs(c); + } } }