diff --git a/source/glbackend/glbackend.cpp b/source/glbackend/glbackend.cpp
index da783174c..508ca7358 100644
--- a/source/glbackend/glbackend.cpp
+++ b/source/glbackend/glbackend.cpp
@@ -58,7 +58,8 @@ void InitBaseRes()
 		engine_res.reset(FResourceFile::OpenResourceFile(baseres, true, true));
 		if (!engine_res)
 		{
-			wm_msgbox("Fatal error", "Engine resources (demolition.pk3) not found");
+			FStringf msg("Engine resources (%s) not found", baseres.GetChars());
+			wm_msgbox("Fatal error", msg.GetChars());
 			exit(-1); 
 		}
 	}
diff --git a/source/platform/win32/winbits.cpp b/source/platform/win32/winbits.cpp
index 9ac920118..440e4051a 100644
--- a/source/platform/win32/winbits.cpp
+++ b/source/platform/win32/winbits.cpp
@@ -131,6 +131,7 @@ int32_t win_buildargs(char **argvbuf)
 
 	// Figure out what directory the program resides in.
 	progdir = argvbuf[0];
+	progdir.Substitute("\\", "/");
 	auto lastsep = progdir.LastIndexOf('/');
 	if (lastsep != -1)
 		progdir.Truncate(lastsep + 1);