Mercurial > projects > dwt-linux
changeset 199:a5adab24940b
Fix missing string termination, thx nascent for example code.
author | Frank Benoit <benoit@tionex.de> |
---|---|
date | Fri, 07 Mar 2008 01:40:43 +0100 |
parents | e2846bbf2256 |
children | 08789b28bdf3 |
files | dwt/graphics/GC.d |
diffstat | 1 files changed, 7 insertions(+), 7 deletions(-) [+] |
line wrap: on
line diff
--- a/dwt/graphics/GC.d Thu Mar 06 21:24:47 2008 +0100 +++ b/dwt/graphics/GC.d Fri Mar 07 01:40:43 2008 +0100 @@ -184,11 +184,11 @@ } static void addCairoString(cairo_t* cairo, char[] str, float x, float y, Font font) { - char[] buffer = str.dup; + char* buffer = toStringz( str ); if (OS.GTK_VERSION >= OS.buildVERSION(2, 8, 0)) { auto layout = OS.pango_cairo_create_layout(cairo); if (layout is null) DWT.error(DWT.ERROR_NO_HANDLES); - OS.pango_layout_set_text(layout, buffer.ptr, -1); + OS.pango_layout_set_text(layout, buffer, -1); OS.pango_layout_set_font_description(layout, font.handle); Cairo.cairo_move_to(cairo, x, y); OS.pango_cairo_layout_path(cairo, layout); @@ -199,7 +199,7 @@ Cairo.cairo_font_extents(cairo, extents); double baseline = y + extents.ascent; Cairo.cairo_move_to(cairo, x, baseline); - Cairo.cairo_text_path(cairo, buffer.ptr); + Cairo.cairo_text_path(cairo, buffer); } } @@ -1636,8 +1636,8 @@ Cairo.cairo_font_extents(cairo, extents); double baseline = y + extents.ascent; Cairo.cairo_move_to(cairo, x, baseline); - char[] buffer = str.dup; - Cairo.cairo_show_text(cairo, buffer.ptr); + char* buffer = toStringz( str ); + Cairo.cairo_show_text(cairo, buffer); Cairo.cairo_new_path(cairo); return; } @@ -3929,11 +3929,11 @@ if (OS.GTK_VERSION < OS.buildVERSION(2, 8, 0)) { //TODO - honor flags checkGC(FONT); - char[] buffer = str.dup; + char* buffer = toStringz(str); cairo_font_extents_t* font_extents = new cairo_font_extents_t(); Cairo.cairo_font_extents(cairo, font_extents); cairo_text_extents_t* extents = new cairo_text_extents_t(); - Cairo.cairo_text_extents(cairo, buffer.ptr, extents); + Cairo.cairo_text_extents(cairo, buffer, extents); return new Point(cast(int)extents.width, cast(int)font_extents.height); } }