- // Add the supported datatypes to the datatype table.
- RtlInitializeGenericTable(&pPrintProcessor->DatatypeTable, _DatatypeTableCompareRoutine, GenericTableAllocateRoutine, GenericTableFreeRoutine, NULL);
-
- for (j = 0; j < dwDatatypes; j++)
- {
- pwszDatatype = DuplicateStringW(pDatatypesInfo1->pName);
-
- if (!RtlInsertElementGenericTable(&pPrintProcessor->DatatypeTable, pDatatypesInfo1->pName, sizeof(PWSTR), NULL))
- {
- ERR("RtlInsertElementGenericTable failed for iteration %lu with error %lu!\n", j, GetLastError());
- goto Cleanup;
- }
-
- ++pDatatypesInfo1;
- }
-
- // Add the Print Processor to the table.
- if (!RtlInsertElementGenericTable(&PrintProcessorTable, pPrintProcessor, sizeof(LOCAL_PRINT_PROCESSOR), NULL))
- {
- ERR("RtlInsertElementGenericTable failed for iteration %lu with error %lu!\n", i, GetLastError());
- goto Cleanup;
- }
+ // Add the Print Processor to the list.
+ InsertTailList(&_PrintProcessorList, &pPrintProcessor->Entry);