diff options
Diffstat (limited to 'glib/src/markup.ccg')
-rw-r--r-- | glib/src/markup.ccg | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/glib/src/markup.ccg b/glib/src/markup.ccg index 2b61a358..16dfcf3f 100644 --- a/glib/src/markup.ccg +++ b/glib/src/markup.ccg @@ -101,8 +101,10 @@ void ParserCallbacks::start_element(GMarkupParseContext* context, ParseContext& cpp_context = *static_cast<ParseContext*>(user_data); g_return_if_fail(context == cpp_context.gobj()); + #ifdef GLIBMM_EXCEPTIONS_ENABLED try { + #endif //GLIBMM_EXCEPTIONS_ENABLED Parser::AttributeMap attributes; if(attribute_names && attribute_values) @@ -117,6 +119,7 @@ void ParserCallbacks::start_element(GMarkupParseContext* context, } cpp_context.get_parser()->on_start_element(cpp_context, element_name, attributes); + #ifdef GLIBMM_EXCEPTIONS_ENABLED } catch(MarkupError& err) { @@ -126,6 +129,7 @@ void ParserCallbacks::start_element(GMarkupParseContext* context, { Glib::exception_handlers_invoke(); } + #endif //GLIBMM_EXCEPTIONS_ENABLED } void ParserCallbacks::end_element(GMarkupParseContext* context, @@ -136,9 +140,12 @@ void ParserCallbacks::end_element(GMarkupParseContext* context, ParseContext& cpp_context = *static_cast<ParseContext*>(user_data); g_return_if_fail(context == cpp_context.gobj()); + #ifdef GLIBMM_EXCEPTIONS_ENABLED try { + #endif //GLIBMM_EXCEPTIONS_ENABLED cpp_context.get_parser()->on_end_element(cpp_context, element_name); + #ifdef GLIBMM_EXCEPTIONS_ENABLED } catch(MarkupError& err) { @@ -148,6 +155,7 @@ void ParserCallbacks::end_element(GMarkupParseContext* context, { Glib::exception_handlers_invoke(); } + #endif //GLIBMM_EXCEPTIONS_ENABLED } void ParserCallbacks::text(GMarkupParseContext* context, @@ -159,9 +167,12 @@ void ParserCallbacks::text(GMarkupParseContext* context, ParseContext& cpp_context = *static_cast<ParseContext*>(user_data); g_return_if_fail(context == cpp_context.gobj()); + #ifdef GLIBMM_EXCEPTIONS_ENABLED try { + #endif //GLIBMM_EXCEPTIONS_ENABLED cpp_context.get_parser()->on_text(cpp_context, Glib::ustring(text, text + text_len)); + #ifdef GLIBMM_EXCEPTIONS_ENABLED } catch(MarkupError& err) { @@ -171,6 +182,7 @@ void ParserCallbacks::text(GMarkupParseContext* context, { Glib::exception_handlers_invoke(); } + #endif //GLIBMM_EXCEPTIONS_ENABLED } void ParserCallbacks::passthrough(GMarkupParseContext* context, @@ -182,10 +194,13 @@ void ParserCallbacks::passthrough(GMarkupParseContext* context, ParseContext& cpp_context = *static_cast<ParseContext*>(user_data); g_return_if_fail(context == cpp_context.gobj()); + #ifdef GLIBMM_EXCEPTIONS_ENABLED try { + #endif //GLIBMM_EXCEPTIONS_ENABLED cpp_context.get_parser()->on_passthrough( cpp_context, Glib::ustring(passthrough_text, passthrough_text + text_len)); + #ifdef GLIBMM_EXCEPTIONS_ENABLED } catch(MarkupError& err) { @@ -195,6 +210,7 @@ void ParserCallbacks::passthrough(GMarkupParseContext* context, { Glib::exception_handlers_invoke(); } + #endif //GLIBMM_EXCEPTIONS_ENABLED } void ParserCallbacks::error(GMarkupParseContext* context, @@ -206,14 +222,18 @@ void ParserCallbacks::error(GMarkupParseContext* context, g_return_if_fail(context == cpp_context.gobj()); g_return_if_fail(error->domain == G_MARKUP_ERROR); + #ifdef GLIBMM_EXCEPTIONS_ENABLED try { + #endif //GLIBMM_EXCEPTIONS_ENABLED cpp_context.get_parser()->on_error(cpp_context, MarkupError(g_error_copy(error))); + #ifdef GLIBMM_EXCEPTIONS_ENABLED } catch(...) { Glib::exception_handlers_invoke(); } + #endif //GLIBMM_EXCEPTIONS_ENABLED } |