@@ -76,7 +76,9 @@ bool APPB::_FInitOS(void)
7676 // TODO: replace starting position with SDL_WINDOWPOS_UNDEFINED
7777 // TODO: set starting size properly
7878
79- SDL_Window *wnd = SDL_CreateWindow (stnApp.Psz (), 64 , 64 , 640 , 480 , 0 );
79+ U8SZ u8szApp;
80+ stnApp.GetUtf8Sz (u8szApp);
81+ SDL_Window *wnd = SDL_CreateWindow (u8szApp, 64 , 64 , 640 , 480 , 0 );
8082 Assert (wnd != pvNil, " no window returned from SDL_CreateWindow" );
8183 if (wnd == pvNil)
8284 {
@@ -506,6 +508,9 @@ bool APPB::FAssertProcApp(PSZS pszsFile, int32_t lwLine, PSZS pszsMsg, void *pv,
506508 stn0.FAppendSz (PszLit (" \n " ));
507509 stn0.FAppendStn (&stn2);
508510
511+ U8SZ u8szMessage;
512+ stn0.GetUtf8Sz (u8szMessage);
513+
509514 SDL_MessageBoxButtonData rgbutton[3 ];
510515 FillPb (rgbutton, SIZEOF (rgbutton), 0 );
511516
@@ -519,7 +524,7 @@ bool APPB::FAssertProcApp(PSZS pszsFile, int32_t lwLine, PSZS pszsMsg, void *pv,
519524 SDL_MessageBoxData data = {0 };
520525 data.buttons = rgbutton;
521526 data.numbuttons = 3 ;
522- data.message = stn0. Psz (); // TODO: UTF-8
527+ data.message = u8szMessage;
523528 data.flags = SDL_MessageBoxFlags::SDL_MESSAGEBOX_ERROR;
524529 data.title = " Assertion Failure" ;
525530
@@ -608,11 +613,17 @@ tribool APPB::TGiveAlertSz(const PCSZ psz, int32_t bk, int32_t cok)
608613 break ;
609614 }
610615
616+ // Convert message to UTF-8
617+ U8SZ u8szMessage;
618+ STN stnMessage;
619+ stnMessage.SetSz (psz);
620+ stnMessage.GetUtf8Sz (u8szMessage);
621+
611622 SDL_MessageBoxData data;
612623 ClearPb (&data, sizeof (data));
613624 data.buttons = rgbutton;
614625 data.numbuttons = ibutton;
615- data.message = psz; // TODO: UTF-8
626+ data.message = u8szMessage;
616627 data.flags = SDL_MessageBoxFlags::SDL_MESSAGEBOX_ERROR;
617628 data.title = " 3D Movie Maker" ;
618629
0 commit comments