Explorar el Código

Panel - FW manual update fix

DSR! hace 3 años
padre
commit
0c2b1f675c

+ 5 - 2
src/pineapple/modules/Advanced/api/module.php

@@ -220,8 +220,11 @@ class Advanced extends SystemModule
     private function performUpgrade()
     {
         if (file_exists('/tmp/upgrade.bin')) {
-            $size = escapeshellarg(filesize('/tmp/upgrade.bin') - 33);
-            exec("dd if=/dev/null of=/tmp/upgrade.bin bs=1 seek={$size}");
+            if ($this->request->skipMetadata) {
+                $size = escapeshellarg(filesize('/tmp/upgrade.bin') - 33);
+                exec("dd if=/dev/null of=/tmp/upgrade.bin bs=1 seek={$size}");
+            }
+
             $this->execBackground("sysupgrade -n /tmp/upgrade.bin");
             $this->response = array("success" => true);
         } else {

+ 5 - 5
src/pineapple/modules/Advanced/js/module.js

@@ -270,7 +270,7 @@ registerController("AdvancedUpgradeController", ['$api', '$scope', '$interval',
                 if (isManuelUpdate) {
                     $scope.upgradeData = response;
                 } else {
-                    $scope.performUpgrade();
+                    $scope.performUpgrade(true);
                 }
             } else if (response.error) {
                 $scope.error = response.error;
@@ -280,14 +280,14 @@ registerController("AdvancedUpgradeController", ['$api', '$scope', '$interval',
         });
     });
 
-    $scope.performUpgrade = (function() {
-        $scope.performUpgradeStart = true;
+    $scope.performUpgrade = (function(skipMetadata) {
         $api.request({
             module: 'Advanced',
-            action: 'performUpgrade'
+            action: 'performUpgrade',
+            skipMetadata: skipMetadata
         }, function(response) {
             if (response.success === true) {
-                $scope.performUpgradeStart = false;
+                $scope.performUpgradeStart = true;
             }
         });
     });