X-Git-Url: https://git.archive.openwrt.org/?p=project%2Fluci.git;a=blobdiff_plain;f=modules%2Fadmin-mini%2Fluasrc%2Fcontroller%2Fmini%2Fsystem.lua;h=44d0688f6dcfcd4ad9d2d074b87ddc4c42182749;hp=93f113a329ffb07a1399466ff4317aa072b178f8;hb=eaaaa39c1733540c1bc19b0c1fd9f1c5083aaa75;hpb=11527683bf98eabcbff2507aa894bd71a96167e8 diff --git a/modules/admin-mini/luasrc/controller/mini/system.lua b/modules/admin-mini/luasrc/controller/mini/system.lua index 93f113a32..44d0688f6 100644 --- a/modules/admin-mini/luasrc/controller/mini/system.lua +++ b/modules/admin-mini/luasrc/controller/mini/system.lua @@ -151,21 +151,15 @@ function action_upgrade() if has_platform and has_image and has_support then -- Mimetype text/plain luci.http.prepare_content("text/plain") + luci.http.write("Starting luci-flash...\n") -- Now invoke sysupgrade local keepcfg = keep_avail and luci.http.formvalue("keepcfg") == "1" - local fd = io.popen("/sbin/luci-flash %s %q" %{ + local flash = ltn12_popen("/sbin/luci-flash %s %q" %{ keepcfg and "-k %q" % _keep_pattern() or "", tmpfile }) - if fd then - while true do - local ln = fd:read("*l") - if not ln then break end - luci.http.write(ln .. "\n") - end - fd:close() - end + luci.ltn12.pump.all(flash, luci.http.write) -- Make sure the device is rebooted luci.sys.reboot()