diff --git a/include/mapnik/text_path.hpp b/include/mapnik/text_path.hpp index 921859843..b08c1e567 100644 --- a/include/mapnik/text_path.hpp +++ b/include/mapnik/text_path.hpp @@ -140,12 +140,12 @@ class text_path : mapnik::noncopyable ~character_node() {} - void vertex(char_info_ptr *c_, double *x_, double *y_, double *angle_) const + void vertex(char_info_ptr & c_, double & x_, double & y_, double & angle_) const { - *c_ = c; - *x_ = pos.x; - *y_ = pos.y; - *angle_ = angle; + c_ = c; + x_ = pos.x; + y_ = pos.y; + angle_ = angle; } }; @@ -172,7 +172,7 @@ public: } /** Return node. Always returns a new node. Has no way to report that there are no more nodes. */ - void vertex(char_info_ptr *c, double *x, double *y, double *angle) const + void vertex(char_info_ptr & c, double & x, double & y, double & angle) const { nodes_[itr_++].vertex(c, x, y, angle); } diff --git a/src/cairo_context.cpp b/src/cairo_context.cpp index d2a3a9271..980523a6f 100644 --- a/src/cairo_context.cpp +++ b/src/cairo_context.cpp @@ -417,7 +417,7 @@ void cairo_context::add_text(text_path const& path, char_info_ptr c; double x, y, angle; - path.vertex(&c, &x, &y, &angle); + path.vertex(c, x, y, angle); face_set_ptr faces = font_manager.get_face_set(c->format->face_name, c->format->fontset); double text_size = c->format->text_size * scale_factor; diff --git a/src/font_engine_freetype.cpp b/src/font_engine_freetype.cpp index 478488557..3842cbecc 100644 --- a/src/font_engine_freetype.cpp +++ b/src/font_engine_freetype.cpp @@ -357,7 +357,7 @@ box2d text_renderer::prepare_glyphs(text_path const& path) char_info_ptr c; double x, y, angle; - path.vertex(&c, &x, &y, &angle); + path.vertex(c, x, y, angle); // TODO Enable when we have support for setting verbosity // MAPNIK_LOG_DEBUG(font_engine_freetype) << "text_renderer: prepare_glyphs=" diff --git a/src/placement_finder.cpp b/src/placement_finder.cpp index 97fc496db..204297fc6 100644 --- a/src/placement_finder.cpp +++ b/src/placement_finder.cpp @@ -919,7 +919,7 @@ bool placement_finder::test_placement(std::auto_ptr const& double cwidth = ci.width + ci.format->character_spacing; char_info_ptr c; double x, y, angle; - current_placement->vertex(&c, &x, &y, &angle); + current_placement->vertex(c, x, y, angle); x = current_placement->center.x + x; y = current_placement->center.y - y;