PoDoFo, do not print out informational messages

This commit is contained in:
Kovid Goyal 2012-08-26 14:18:19 +05:30
parent 10e0c2bead
commit 4d6e1aa1f6

View File

@ -14,6 +14,29 @@ static PyMethodDef podofo_methods[] = {
{NULL} /* Sentinel */ {NULL} /* Sentinel */
}; };
class PyLogMessage : public PdfError::LogMessageCallback {
public:
~PyLogMessage() {}
void LogMessage(ELogSeverity severity, const char* prefix, const char* msg, va_list & args ) {
if (severity > eLogSeverity_Warning) return;
if (prefix)
fprintf(stderr, "%s", prefix);
vfprintf(stderr, msg, args);
}
void LogMessage(ELogSeverity severity, const wchar_t* prefix, const wchar_t* msg, va_list & args ) {
if (severity > eLogSeverity_Warning) return;
if (prefix)
fwprintf(stderr, prefix);
vfwprintf(stderr, msg, args);
}
};
PyLogMessage log_message;
PyMODINIT_FUNC PyMODINIT_FUNC
initpodofo(void) initpodofo(void)
@ -26,6 +49,9 @@ initpodofo(void)
pdf::Error = PyErr_NewException((char*)"podofo.Error", NULL, NULL); pdf::Error = PyErr_NewException((char*)"podofo.Error", NULL, NULL);
if (pdf::Error == NULL) return; if (pdf::Error == NULL) return;
PdfError::SetLogMessageCallback((PdfError::LogMessageCallback*)&log_message);
PdfError::EnableDebug(false);
m = Py_InitModule3("podofo", podofo_methods, m = Py_InitModule3("podofo", podofo_methods,
"Wrapper for the PoDoFo PDF library"); "Wrapper for the PoDoFo PDF library");