X-Git-Url: https://git.dlugolecki.net.pl/?a=blobdiff_plain;f=gedcom%2Fmessage.c;h=c756356eb1e852b249569e15e8f98220ed5f946c;hb=1cb22adafb0696887c3a7544f81898d0685b42b7;hp=6943f6078c9b2b2fb6836eac1e25deaffc9cf159;hpb=d1ef17aad36016326df1d243dd243ecbdd8a819a;p=gedcom-parse.git diff --git a/gedcom/message.c b/gedcom/message.c index 6943f60..c756356 100644 --- a/gedcom/message.c +++ b/gedcom/message.c @@ -27,9 +27,24 @@ void cleanup_mess_buffer(); -struct safe_buffer mess_buffer = { NULL, 0, cleanup_mess_buffer }; +struct safe_buffer mess_buffer = { NULL, 0, NULL, 0, cleanup_mess_buffer }; Gedcom_msg_handler msg_handler = NULL; +/** This function registers a callback that is called if there are errors, + warnings or just messages coming from the parser. See + \ref Gedcom_msg_handler for the signature of the callback. + + For errors, the \c msg passed to the callback will have the format: + \code + Error on line : + \endcode + Note that the entire string will be properly internationalized, and + encoded in UTF-8 (Why UTF-8?). + Also, no newline is appended, so that + the application program can use it in any way it wants. Warnings are + similar, but use "Warning" instead of "Error". Messages are plain + text, without any prefix. +*/ void gedcom_set_message_handler(Gedcom_msg_handler func) { msg_handler = func;