diff --git a/engine/client/pr_csqc.c b/engine/client/pr_csqc.c index c0490d1e..b1b7ad2a 100644 --- a/engine/client/pr_csqc.c +++ b/engine/client/pr_csqc.c @@ -9308,7 +9308,10 @@ qboolean CSQC_ParseGamePacket(int seat, qboolean sized) if (!csqcprogs || !parsefnc) { int next = MSG_ReadByte(); - Host_EndGame("CSQC not running or is unable to parse events (lead byte %i).\n", next); + if (!csqcprogs) + Host_EndGame("This server requires CSQC support, but \"csprogsvers/%x.dat\" wasn't loaded.\n", csprogs_checksum); + else + Host_EndGame("Loaded CSQC module is unable to parse events (lead byte %i).\n", next); return false; } csqc_mayread = true; diff --git a/engine/common/fs_win32.c b/engine/common/fs_win32.c index 972967a8..a7cdce97 100644 --- a/engine/common/fs_win32.c +++ b/engine/common/fs_win32.c @@ -366,7 +366,7 @@ vfsfile_t *QDECL VFSW32_OpenTemp(void) file = Z_Malloc(sizeof(vfsw32file_t) + strlen(osname)+1); strcpy((char*)(file+1), osname); #ifdef _DEBUG - narrowen(file->funcs.dbgname, sizeof(file->funcs.dbgname), osname); + Q_strncpyz(file->funcs.dbgname, osname, sizeof(file->funcs.dbgname)); #endif file->funcs.Close = VFSW32_CloseTemp; //gotta delete it after close. hopefully we won't crash too often... } diff --git a/engine/common/pr_bgcmd.c b/engine/common/pr_bgcmd.c index 2b5d7c41..517b363f 100644 --- a/engine/common/pr_bgcmd.c +++ b/engine/common/pr_bgcmd.c @@ -7665,6 +7665,7 @@ qc_extension_t QSG_Extensions[] = { {"DP_QC_GETSURFACE", NULL, 6,{"getsurfacenumpoints", "getsurfacepoint", "getsurfacenormal", "getsurfacetexture", "getsurfacenearpoint", "getsurfaceclippedpoint"}}, {"DP_QC_GETSURFACEPOINTATTRIBUTE", NULL, 1,{"getsurfacepointattribute"}}, {"DP_QC_GETTAGINFO", NULL, 2,{"gettagindex", "gettaginfo"}}, + {"DP_QC_I18N", NULL, 0,{NULL}, "Specifies that the engine uses $MODULE.dat.$LANG.po files that translates the dotranslate_* globals on load - these are usually created via the _(\"foo\") qcc intrinsic."}, {"DP_QC_MINMAXBOUND", NULL, 3,{"min", "max", "bound"}}, {"DP_QC_MULTIPLETEMPSTRINGS", NULL, 0,{NULL}, "Superseded by DP_QC_UNLIMITEDTEMPSTRINGS. Functions that return a temporary string will not overwrite/destroy previous temporary strings until at least 16 strings are returned (or control returns to the engine)."}, {"DP_QC_RANDOMVEC", check_notrerelease, 1,{"randomvec"}}, diff --git a/engine/gl/gl_vidnt.c b/engine/gl/gl_vidnt.c index 558b1d5f..71bcea47 100644 --- a/engine/gl/gl_vidnt.c +++ b/engine/gl/gl_vidnt.c @@ -922,7 +922,7 @@ static qboolean Win32NVVK_AttachVulkan (rendererstate_t *info) qglSignalVkSemaphoreNV = getglfunc("glSignalVkSemaphoreNV"); qglSignalVkFenceNV = getglfunc("glSignalVkFenceNV"); - vkGetInstanceProcAddr = nvvkGetInstanceProcAddr(NULL, "vkGetInstanceProcAddr"); + vkGetInstanceProcAddr = (PFN_vkGetInstanceProcAddr)nvvkGetInstanceProcAddr(NULL, "vkGetInstanceProcAddr"); if (!vkGetInstanceProcAddr) vkGetInstanceProcAddr = nvvkGetInstanceProcAddr; // qwglMakeCurrent(maindc, NULL);