Fossil SCM

On Cygwin, if no browser is set and no Cygwin version of any browser can be found, fall back to win32/win64 version of chrome, firefox or IE (in that order)

jan.nijtmans 2013-09-02 09:33 trunk
Commit 021866fd9196a09a29ae616fb826c141cbaa807c
1 file changed +13 -2
+13 -2
--- src/main.c
+++ src/main.c
@@ -1860,13 +1860,24 @@
18601860
if( zBrowser==0 ){
18611861
static const char *const azBrowserProg[] =
18621862
{ "xdg-open", "gnome-open", "firefox", "google-chrome" };
18631863
int i;
18641864
#if defined(__CYGWIN__)
1865
- const char *path = fossil_getenv("PROGRAMFILES");
1865
+ const char *path = fossil_getenv("ProgramFiles(x86)");
1866
+ if( !path ){
1867
+ path = fossil_getenv("PROGRAMFILES");
1868
+ }
18661869
path = fossil_utf8_to_filename(path);
1867
- zBrowser = mprintf("\"%s/Internet Explorer/iexplore.exe\"", path);
1870
+ zBrowser = mprintf("%s/Google/Chrome/Application/chrome.exe", path);
1871
+ if( file_access(zBrowser, X_OK) ){
1872
+ zBrowser = mprintf("%s/Mozilla Firefox/firefox.exe", path);
1873
+ }
1874
+ if( file_access(zBrowser, X_OK) ){
1875
+ path = fossil_utf8_to_filename(fossil_getenv("PROGRAMFILES"));
1876
+ zBrowser = mprintf("%s/Internet Explorer/iexplore.exe", path);
1877
+ }
1878
+ zBrowser = mprintf("\"%s\"", zBrowser);
18681879
#else
18691880
zBrowser = "echo";
18701881
#endif
18711882
for(i=0; i<sizeof(azBrowserProg)/sizeof(azBrowserProg[0]); i++){
18721883
if( binaryOnPath(azBrowserProg[i]) ){
18731884
--- src/main.c
+++ src/main.c
@@ -1860,13 +1860,24 @@
1860 if( zBrowser==0 ){
1861 static const char *const azBrowserProg[] =
1862 { "xdg-open", "gnome-open", "firefox", "google-chrome" };
1863 int i;
1864 #if defined(__CYGWIN__)
1865 const char *path = fossil_getenv("PROGRAMFILES");
 
 
 
1866 path = fossil_utf8_to_filename(path);
1867 zBrowser = mprintf("\"%s/Internet Explorer/iexplore.exe\"", path);
 
 
 
 
 
 
 
 
1868 #else
1869 zBrowser = "echo";
1870 #endif
1871 for(i=0; i<sizeof(azBrowserProg)/sizeof(azBrowserProg[0]); i++){
1872 if( binaryOnPath(azBrowserProg[i]) ){
1873
--- src/main.c
+++ src/main.c
@@ -1860,13 +1860,24 @@
1860 if( zBrowser==0 ){
1861 static const char *const azBrowserProg[] =
1862 { "xdg-open", "gnome-open", "firefox", "google-chrome" };
1863 int i;
1864 #if defined(__CYGWIN__)
1865 const char *path = fossil_getenv("ProgramFiles(x86)");
1866 if( !path ){
1867 path = fossil_getenv("PROGRAMFILES");
1868 }
1869 path = fossil_utf8_to_filename(path);
1870 zBrowser = mprintf("%s/Google/Chrome/Application/chrome.exe", path);
1871 if( file_access(zBrowser, X_OK) ){
1872 zBrowser = mprintf("%s/Mozilla Firefox/firefox.exe", path);
1873 }
1874 if( file_access(zBrowser, X_OK) ){
1875 path = fossil_utf8_to_filename(fossil_getenv("PROGRAMFILES"));
1876 zBrowser = mprintf("%s/Internet Explorer/iexplore.exe", path);
1877 }
1878 zBrowser = mprintf("\"%s\"", zBrowser);
1879 #else
1880 zBrowser = "echo";
1881 #endif
1882 for(i=0; i<sizeof(azBrowserProg)/sizeof(azBrowserProg[0]); i++){
1883 if( binaryOnPath(azBrowserProg[i]) ){
1884

Keyboard Shortcuts

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