Fossil SCM

fix [ce73fc2173] as well

jan.nijtmans 2012-09-12 14:42 UTC restore-win95
Commit ed5695fe7fe2afcd4d87f1e5137b47bae7c5b646
1 file changed +14 -1
+14 -1
--- src/main.c
+++ src/main.c
@@ -827,14 +827,27 @@
827827
** This function implements a cross-platform "system()" interface.
828828
*/
829829
int fossil_system(const char *zOrigCmd){
830830
int rc;
831831
#if defined(_WIN32)
832
- /* On windows, we have to put double-quotes around the entire command.
832
+ /* On windows NT, we have to put double-quotes around the entire command.
833833
** Who knows why - this is just the way windows works.
834834
*/
835
+#ifdef UNICODE
835836
char *zNewCmd = mprintf("\"%s\"", zOrigCmd);
837
+#else
838
+ OSVERSIONINFOA sInfo;
839
+ char *zNewCmd;
840
+
841
+ sInfo.dwOSVersionInfoSize = sizeof(sInfo);
842
+ GetVersionExA(&sInfo);
843
+ if (sInfo.dwPlatformId==VER_PLATFORM_WIN32_NT) {
844
+ zNewCmd = mprintf("\"%s\"", zOrigCmd);
845
+ } else {
846
+ zNewCmd = mprintf("%s", zOrigCmd);
847
+ }
848
+#endif
836849
TCHAR *zMbcs = fossil_utf8_to_mbcs(zNewCmd);
837850
if( g.fSystemTrace ) {
838851
char *zOut = mprintf("SYSTEM: %s\n", zNewCmd);
839852
fossil_puts(zOut, 1);
840853
fossil_free(zOut);
841854
--- src/main.c
+++ src/main.c
@@ -827,14 +827,27 @@
827 ** This function implements a cross-platform "system()" interface.
828 */
829 int fossil_system(const char *zOrigCmd){
830 int rc;
831 #if defined(_WIN32)
832 /* On windows, we have to put double-quotes around the entire command.
833 ** Who knows why - this is just the way windows works.
834 */
 
835 char *zNewCmd = mprintf("\"%s\"", zOrigCmd);
 
 
 
 
 
 
 
 
 
 
 
 
836 TCHAR *zMbcs = fossil_utf8_to_mbcs(zNewCmd);
837 if( g.fSystemTrace ) {
838 char *zOut = mprintf("SYSTEM: %s\n", zNewCmd);
839 fossil_puts(zOut, 1);
840 fossil_free(zOut);
841
--- src/main.c
+++ src/main.c
@@ -827,14 +827,27 @@
827 ** This function implements a cross-platform "system()" interface.
828 */
829 int fossil_system(const char *zOrigCmd){
830 int rc;
831 #if defined(_WIN32)
832 /* On windows NT, we have to put double-quotes around the entire command.
833 ** Who knows why - this is just the way windows works.
834 */
835 #ifdef UNICODE
836 char *zNewCmd = mprintf("\"%s\"", zOrigCmd);
837 #else
838 OSVERSIONINFOA sInfo;
839 char *zNewCmd;
840
841 sInfo.dwOSVersionInfoSize = sizeof(sInfo);
842 GetVersionExA(&sInfo);
843 if (sInfo.dwPlatformId==VER_PLATFORM_WIN32_NT) {
844 zNewCmd = mprintf("\"%s\"", zOrigCmd);
845 } else {
846 zNewCmd = mprintf("%s", zOrigCmd);
847 }
848 #endif
849 TCHAR *zMbcs = fossil_utf8_to_mbcs(zNewCmd);
850 if( g.fSystemTrace ) {
851 char *zOut = mprintf("SYSTEM: %s\n", zNewCmd);
852 fossil_puts(zOut, 1);
853 fossil_free(zOut);
854

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button