Pier Angelo Vendrame pushed to branch base-browser-115.7.0esr-13.5-1 at The Tor Project / Applications / Tor Browser

Commits:

3 changed files:

Changes:

  • toolkit/mozapps/update/updater/updater.cpp
    ... ... @@ -2807,7 +2807,7 @@ int LaunchCallbackAndPostProcessApps(int argc, NS_tchar** argv,
    2807 2807
     #endif
    
    2808 2808
     
    
    2809 2809
       if (argc > callbackIndex) {
    
    2810
    -#if defined(XP_WIN) && !defined(BASE_BROWSER_UPDATE)
    
    2810
    +#if defined(XP_WIN)
    
    2811 2811
         if (gSucceeded) {
    
    2812 2812
           if (!LaunchWinPostProcess(gInstallDirPath, gPatchDirPath)) {
    
    2813 2813
             fprintf(stderr, "The post update process was not launched");
    

  • toolkit/xre/nsIXREDirProvider.idl
    ... ... @@ -20,4 +20,9 @@ interface nsIXREDirProvider : nsISupports
    20 20
        * Gets the hash for the current installation directory.
    
    21 21
        */
    
    22 22
       AString getInstallHash();
    
    23
    +
    
    24
    +  /**
    
    25
    +   * Tells whether the browser has been started in portable mode.
    
    26
    +   */
    
    27
    +  readonly attribute bool isPortableMode;
    
    23 28
     };

  • toolkit/xre/nsXREDirProvider.cpp
    ... ... @@ -1109,7 +1109,14 @@ nsresult nsXREDirProvider::GetUpdateRootDir(nsIFile** aResult,
    1109 1109
       rv = GetUserDataDirectory(getter_AddRefs(updRoot), false);
    
    1110 1110
       NS_ENSURE_SUCCESS(rv, rv);
    
    1111 1111
     #  else
    
    1112
    -  rv = GetUserDataDirectoryHome(getter_AddRefs(updRoot), false);
    
    1112
    +  bool isPortable = true;
    
    1113
    +  rv = GetIsPortableMode(&isPortable);
    
    1114
    +  NS_ENSURE_SUCCESS(rv, rv);
    
    1115
    +  if (isPortable) {
    
    1116
    +    rv = GetUserDataDirectoryHome(getter_AddRefs(updRoot), false);
    
    1117
    +  } else {
    
    1118
    +    rv = GetUserDataDirectory(getter_AddRefs(updRoot), true);
    
    1119
    +  }
    
    1113 1120
       NS_ENSURE_SUCCESS(rv, rv);
    
    1114 1121
     #  endif
    
    1115 1122
       rv = updRoot->AppendNative("UpdateInfo"_ns);
    
    ... ... @@ -1324,6 +1331,20 @@ nsresult nsXREDirProvider::GetPortableDataDir(nsIFile** aFile,
    1324 1331
     }
    
    1325 1332
     #endif
    
    1326 1333
     
    
    1334
    +NS_IMETHODIMP nsXREDirProvider::GetIsPortableMode(bool* aIsPortableMode) {
    
    1335
    +#ifdef RELATIVE_DATA_DIR
    
    1336
    +  if (gDataDirPortable) {
    
    1337
    +    *aIsPortableMode = *gDataDirPortable;
    
    1338
    +  } else {
    
    1339
    +    nsCOMPtr<nsIFile> dir;
    
    1340
    +    GetPortableDataDir(getter_AddRefs(dir), *aIsPortableMode);
    
    1341
    +  }
    
    1342
    +#else
    
    1343
    +  *aIsPortableMode = false;
    
    1344
    +#endif
    
    1345
    +  return NS_OK;
    
    1346
    +}
    
    1347
    +
    
    1327 1348
     nsresult nsXREDirProvider::GetUserDataDirectoryHome(nsIFile** aFile,
    
    1328 1349
                                                         bool aLocal) {
    
    1329 1350
       // Copied from nsAppFileLocationProvider (more or less)