18 Commits

Author SHA1 Message Date
Dmitry-Me
a5eb2b8e7e UI: Add missing return statement 2018-08-01 11:04:25 +03:00
jp9000
ceadde0838 UI/updater: Delete visual studio runtimes after execution 2018-03-18 11:12:14 -07:00
jp9000
b7e2247de2 UI/updater: Return false on integrity check failure 2018-03-15 12:11:46 -07:00
jp9000
052f395ebf UI/updater: Don't update modules of opposite arch
Saves a bit of bandwidth when the update module just updates binaries
for the specific architecture being updated.  Especially true when
libcef needs to be updated.
2018-03-15 12:06:06 -07:00
jp9000
aab6b3f55f UI/updater: Add automatic check/install for VS2017 redist
Allows users to seamlessly upgrade the version of OBS Studio to the
newer version which is built with VS2017 rather than VS2013.
2018-03-15 12:04:02 -07:00
jp9000
06d1f2768e UI/updater: Fix a few type size mismatch warnings 2018-03-15 12:04:02 -07:00
jp9000
588d74dee1 UI/updater: Set license of windows update module to ISC
This is just for the update module -- allows us the ability to
seamlessly update the program to VC2017 and seamlessly install Visual
C++ 2017 redistributables without potential issues that could be caused
by GPL usage for the update module.
2018-03-15 12:04:02 -07:00
jp9000
77da6158a4 UI/updater: Rewrite function 2018-03-15 12:04:02 -07:00
Richard Stanway
05fb67717e
UI/updater: Use TLS 1.2 with WinHTTP
On Windows 7, WinHTTP defaults to using only SSL3 and TLS 1.0. The
obsproject.com server was updated to remove TLS 1.0 support and
this has caused updates to stop working on Windows 7.
2017-10-02 15:33:34 +02:00
Richard Stanway
043fea0ab2
UI/updater: Improved handling of failure conditions
Currently if a file is partially written to (eg, the file is opened for
writing but the write fails), the updater won't correctly roll back to the
previous version, leaving the OBS install in an inconsistent state.

We now track failed installs or hash failures on patched files with a new
STATE_INSTALL_FAILED state and properly roll back on errors.
2017-08-09 03:37:39 +02:00
Richard Stanway
e59f969633
UI/updater: Restart progress bar when installing updates
When updating large files such as libcef, the patching process can take a
decent amount of time. Previously the progress bar would remain at 100%
after completing the downloads, so the user may think the updater has
frozen. Now it shows the process of the install / patching process.
2017-08-09 03:37:36 +02:00
Richard Stanway
da9e247964
UI/updater: Fix incorrect path in portable mode 2017-06-12 16:45:16 +02:00
jp9000
4f64be278c UI/updater: Ignore 64bit files on 32bit windows
This would cause people to download the 64bit files when they were on
the 32bit version of windows, even though those files aren't meant to be
installed.
2017-03-07 09:11:44 -08:00
jp9000
aab843597d UI/updater: Fix potential fail case when no files to patch
The updater would return HTTP 400 on an empty json array upload for the
patch manifest.
2017-03-06 22:20:51 -08:00
jp9000
65d453049a UI/updater: Fix temp files being created and not deleted
The GetTempPath and GetTempFileName functions weren't being used
correctly, GetTempFileName always create a temporary file, and was
creating a temporary file in the root directory of the hard drive
unintentionally.
2017-03-06 21:57:47 -08:00
jp9000
bc9a58174b UI/updater: Use better function for getting process names
EnumProcessModules may not work correctly cross-arch, so use
GetProcessImageFileName instead to ensure no issues in that case.
2017-03-06 18:23:29 -08:00
jp9000
5d136b13a7 UI/updater: Wait for OBS to close before updating 2017-03-06 05:30:58 -08:00
jp9000
86862b672e updater: Add windows updater module 2017-03-06 03:54:53 -08:00