diff options
| -rw-r--r-- | gtk/PlatGTK.cxx | 7 | 
1 files changed, 4 insertions, 3 deletions
| diff --git a/gtk/PlatGTK.cxx b/gtk/PlatGTK.cxx index 20c518fdb..f841a96f0 100644 --- a/gtk/PlatGTK.cxx +++ b/gtk/PlatGTK.cxx @@ -1290,7 +1290,7 @@ void SurfaceImpl::DrawTextBase(PRectangle rc, Font &font_, int ybase, const char  			int wclen;  			if (et == UTF8) {  				wclen = UCS2FromUTF8(s, len, -					reinterpret_cast<wchar_t *>(wctext), maxLengthTextRun - 1); +					static_cast<wchar_t *>(static_cast<void *>(wctext)), maxLengthTextRun - 1);  			} else {	// dbcs, so convert using current locale  				char sMeasure[maxLengthTextRun];  				memcpy(sMeasure, s, len); @@ -1465,7 +1465,7 @@ void SurfaceImpl::MeasureWidths(Font &font_, const char *s, int len, int *positi  			int wclen;  			if (et == UTF8) {  				wclen = UCS2FromUTF8(s, len, -					reinterpret_cast<wchar_t *>(wctext), maxLengthTextRun - 1); +					static_cast<wchar_t *>(static_cast<void *>(wctext)), maxLengthTextRun - 1);  			} else {	// dbcsMode, so convert using current locale  				char sDraw[maxLengthTextRun];  				memcpy(sDraw, s, len); @@ -1550,7 +1550,8 @@ int SurfaceImpl::WidthText(Font &font_, const char *s, int len) {  #endif  		if (et == UTF8) {  			GdkWChar wctext[maxLengthTextRun]; -			size_t wclen = UCS2FromUTF8(s, len, (wchar_t *)wctext, sizeof(wctext) / sizeof(GdkWChar) - 1); +			size_t wclen = UCS2FromUTF8(s, len, static_cast<wchar_t *>(static_cast<void *>(wctext)), +				sizeof(wctext) / sizeof(GdkWChar) - 1);  			wctext[wclen] = L'\0';  			return gdk_text_width_wc(PFont(font_)->pfont, wctext, wclen);  		} else { | 
