Kaynağa Gözat

Merge pull request #275 from CIB/windows-compilefix

Windows compilefix
Ivan Safrin 12 yıl önce
ebeveyn
işleme
e6e72ed0ec

+ 19 - 0
Core/Contents/Source/OSBasics.cpp

@@ -366,7 +366,26 @@ time_t OSBasics::getFileTime(const Polycode::String& pathString) {
 	}
 	}
 
 
 #ifdef _WINDOWS
 #ifdef _WINDOWS
+	WCHAR tmp[4096];
+	memset(tmp, 0, sizeof(WCHAR)*4096);
+	ctow(tmp, pathString.c_str());
+	HANDLE hFile = CreateFile(tmp, GENERIC_READ, FILE_SHARE_WRITE | FILE_SHARE_READ | FILE_SHARE_DELETE,
+								NULL, OPEN_EXISTING, 0, NULL);
+								
+	if(hFile == INVALID_HANDLE_VALUE) {
+		return 0;
+	}
 
 
+	FILETIME lastModifyTime;
+	BOOL result = GetFileTime(hFile, NULL, NULL, &lastModifyTime);
+	if(!result) {
+		return 0;
+	} else {
+		ULARGE_INTEGER ull;
+		ull.LowPart = lastModifyTime.dwLowDateTime;
+		ull.HighPart = lastModifyTime.dwHighDateTime;
+		return ull.QuadPart / 10000000ULL - 11644473600ULL;
+	}
 #else
 #else
 	struct stat statbuf;
 	struct stat statbuf;
 	int retVal = stat(realString.c_str(), &statbuf);
 	int retVal = stat(realString.c_str(), &statbuf);

+ 5 - 0
Core/Contents/Source/PolyGLSLProgram.cpp

@@ -31,6 +31,11 @@ THE SOFTWARE.
 
 
 #ifdef _WINDOWS
 #ifdef _WINDOWS
 #include <windows.h>
 #include <windows.h>
+
+// Some shader functions that aren't defined in glext/wglext
+extern PFNGLGETSHADERIVPROC glGetShaderiv;
+extern PFNGLGETSHADERINFOLOGPROC glGetShaderInfoLog;
+
 #endif
 #endif
 
 
 #include "PolyGLHeaders.h"
 #include "PolyGLHeaders.h"