From d7cafbb411464bddf1e1cf45c48308fe60cc5d2d Mon Sep 17 00:00:00 2001 From: Ralf Stephan Date: Mon, 29 May 2006 07:05:46 +0000 Subject: use unions for type-punning to remove some gcc-4.1 warnings (bzr r1061) --- src/sp-flowtext.cpp | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'src/sp-flowtext.cpp') diff --git a/src/sp-flowtext.cpp b/src/sp-flowtext.cpp index a16123901..0083b0e4a 100644 --- a/src/sp-flowtext.cpp +++ b/src/sp-flowtext.cpp @@ -558,21 +558,21 @@ void SPFlowtext::convert_to_text() if (set_y) sp_repr_set_svg_double(span_tspan, "y", anchor_point[NR::Y]); - SPObject *source_obj; + union { SPObject *op; void *vp; } source_obj; Glib::ustring::iterator span_text_start_iter; - group->layout.getSourceOfCharacter(it, (void**)&source_obj, &span_text_start_iter); - gchar *style_text = sp_style_write_difference((SP_IS_STRING(source_obj) ? source_obj->parent : source_obj)->style, group->style); + group->layout.getSourceOfCharacter(it, &source_obj.vp, &span_text_start_iter); + gchar *style_text = sp_style_write_difference((SP_IS_STRING(source_obj.vp) ? source_obj.op->parent : source_obj.op)->style, group->style); if (style_text && *style_text) { span_tspan->setAttribute("style", style_text); g_free(style_text); } - if (SP_IS_STRING(source_obj)) { - Glib::ustring *string = &SP_STRING(source_obj)->string; - SPObject *span_end_obj; + if (SP_IS_STRING(source_obj.vp)) { + Glib::ustring *string = &SP_STRING(source_obj.vp)->string; + union { SPObject *op; void *vp; } span_end_obj; Glib::ustring::iterator span_text_end_iter; - group->layout.getSourceOfCharacter(it_span_end, (void**)&span_end_obj, &span_text_end_iter); - if (span_end_obj != source_obj) { + group->layout.getSourceOfCharacter(it_span_end, &span_end_obj.vp, &span_text_end_iter); + if (span_end_obj.op != source_obj.op) { if (it_span_end == group->layout.end()) { span_text_end_iter = span_text_start_iter; for (int i = group->layout.iteratorToCharIndex(it_span_end) - group->layout.iteratorToCharIndex(it) ; i ; --i) -- cgit v1.2.3