summaryrefslogtreecommitdiff
path: root/src/downloadmanager.cpp
Commit message (Collapse)AuthorAgeFilesLines
* cleaned up warning messages from the download manager in case of download ↵Tannin2015-05-251-2/+7
| | | | problems
* dropping an url on the download widget now attempts to download the urlTannin2015-05-111-5/+2
|
* dropped redundant report.h/report.cppTannin2015-05-091-1/+1
|
* Merge with branch1.2Tannin2015-01-241-2/+4
|\
| * cleanup (mostly removing unused includes)Tannin2015-01-221-2/+4
| |
| * - workaround for GetModuleFileName-calls that supply wrong buffer sizeTannin2014-11-061-1/+2
| | | | | | | | | | | | - removed obsoleted calls to GetVersionEx - bugfix: download urls were potentially not encoded correctly - bugfixes to tls-based recursion protection
| * - moved the hook-recursion-protection to tlsTannin2014-09-291-31/+19
| | | | | | | | | | | | | | | | | | - some code cleanup and consolidation - hook.dll will now report all of its own exceptions - some more logging during startup - changed the way urls are encoded for download requests - now displaying (one of the) process name(s) while waiting for a program to end - bugfix: spawned processes were forced to leave the job
| * - archive library can now query for password during extraction (seems to be ↵Tannin2014-11-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | necessary for rars) - process blacklist is now taken from a file if there is one, not hardcoded - removed workaround for the papyrus compiler - updated loot client to work with the actual api - loot client now links with loot32.dll at runtime - loot client now produces its output in a (json-)file which includes all plugin messages and dirty flags - fomod installer now tries to parse the xml with several encodings - fomod installer will now display a diagnostics warning if the jpg imageformat isn't supported - base preview plugin now tries to be a bit smarter about resizing images to fit the screen - bugfix: fomod installer no longer tries to open an image even after detecting its invalid - bugfix: potential null-pointer dereferentiation in getprivateprofile... hooks - bugfix: potential null-pointer dereferentiation in download manager - bugfix: internal origin name showed up in one more place - bugfix: ToString function produced strings that were one (zero-termination-)character too long
| * - re-enabled building of loot_cli and started developing against the new apiTannin2014-09-081-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - extended set of default categories - more tolerand bbcode parser - added a few colors for the bbcode parser - more fixes to qt5 compatibility - started work on ability to unloading (and thus re-loading) of plugins - names of plugins are no longer localizable (because those names are also used to store settings) - added settings to disable individual diagnosis settings - path of dependencies is now configured in a .pri file instead of environment variablees - bugfix: if the modid-input is canceled, the id was saved as -1 and wasn't re-requested from the user - bugfix: moving files with the SHFileOperation-Api didn't update the vfs correctly (still not perfect but better) - bugfix: attempt to remove the deleter-file seems to have caused error messages for some users - bugfix: fixed a couple of cases that might have caused the tutorial to hang
| * - download-list will no longer show a file as having incomplete data if ↵Tannin2014-07-211-2/+1
| | | | | | | | | | | | | | there is no file version - added a new mod column with icons displaying the content of the mod - MO now differentiates between mods using an internal name that disambiguates between foreign and regular mods
| * normalized eol style (all files should now have windows line endings)Tannin2014-07-171-1471/+1471
| |
* | replaced all uses of NULL with nullptrTannin2014-11-281-16/+16
| | | | | | | | fixed a few placed where NULL was used as a number or boolean
* | cleanup und bugfixes after refactoringTannin2014-11-281-1/+1
| |
* | MergeTannin2014-11-061-1/+1
|\ \
| * | - archive library can now query for password during extraction (seems to be ↵Tannin2014-11-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | necessary for rars) - process blacklist is now taken from a file if there is one, not hardcoded - removed workaround for the papyrus compiler - updated loot client to work with the actual api - loot client now links with loot32.dll at runtime - loot client now produces its output in a (json-)file which includes all plugin messages and dirty flags - fomod installer now tries to parse the xml with several encodings - fomod installer will now display a diagnostics warning if the jpg imageformat isn't supported - base preview plugin now tries to be a bit smarter about resizing images to fit the screen - bugfix: fomod installer no longer tries to open an image even after detecting its invalid - bugfix: potential null-pointer dereferentiation in getprivateprofile... hooks - bugfix: potential null-pointer dereferentiation in download manager - bugfix: internal origin name showed up in one more place - bugfix: ToString function produced strings that were one (zero-termination-)character too long
* | | - workaround for GetModuleFileName-calls that supply wrong buffer sizeTannin2014-11-061-1/+2
| | | | | | | | | | | | | | | | | | - removed obsoleted calls to GetVersionEx - bugfix: download urls were potentially not encoded correctly - bugfixes to tls-based recursion protection
* | | - moved the hook-recursion-protection to tlsTannin2014-09-291-31/+19
|/ / | | | | | | | | | | | | | | | | - some code cleanup and consolidation - hook.dll will now report all of its own exceptions - some more logging during startup - changed the way urls are encoded for download requests - now displaying (one of the) process name(s) while waiting for a program to end - bugfix: spawned processes were forced to leave the job
* | - re-enabled building of loot_cli and started developing against the new apiTannin2014-09-081-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - extended set of default categories - more tolerand bbcode parser - added a few colors for the bbcode parser - more fixes to qt5 compatibility - started work on ability to unloading (and thus re-loading) of plugins - names of plugins are no longer localizable (because those names are also used to store settings) - added settings to disable individual diagnosis settings - path of dependencies is now configured in a .pri file instead of environment variablees - bugfix: if the modid-input is canceled, the id was saved as -1 and wasn't re-requested from the user - bugfix: moving files with the SHFileOperation-Api didn't update the vfs correctly (still not perfect but better) - bugfix: attempt to remove the deleter-file seems to have caused error messages for some users - bugfix: fixed a couple of cases that might have caused the tutorial to hang
* | - download-list will no longer show a file as having incomplete data if ↵Tannin2014-07-211-2/+1
| | | | | | | | | | | | | | there is no file version - added a new mod column with icons displaying the content of the mod - MO now differentiates between mods using an internal name that disambiguates between foreign and regular mods
* | normalized eol style (all files should now have windows line endings)Tannin2014-07-171-1471/+1471
|/
* MergeTannin2014-06-231-2/+5
|\
| * - changed the url used to login on nexus (the previous page was disabled)Tannin2014-06-211-2/+5
| | | | | | | | - bugfix: download manager might have tried to read from a closed connection
* | - download read buffer is now limited to 1MB. Might prevent out-of-memory ↵Tannin2014-06-171-3/+1
|/ | | | | | errors during download - bugfix: plugins are now disabled when deactivating a mod before the files are removed from the vfs
* - added a new mod type that represents files handled externally (i.e. DLCs) ↵Tannin2014-05-311-1/+1
| | | | | | | | | | | as mods in MO - hashes of file names in bsa files are no longer checked all the time - author and description is now read from esp files - rewrote the code that fixes modlists after a rename, should be a bit more robust - fixes to qt 5 and msvc 2013 compatibility - started to update the tutorial (not done yet!) - bugfix: counter for the problems badge wasn't calculated correctly
* - files in bsas are now only displayed in the data tab if they are managed by moTannin2014-05-251-73/+110
| | | | | | | | | | | | | - number of problems detected by MO is now displayed as a badge on the icon - rephrased the explanation text on the Archives tab. unchecked plugin-loaded bsas no longer prompt a warning - bsa extraction is now handled in a plugin - added a way for plugins to react to mod installation - re-enabled the automatic fix for asset order problems - bugfix: In some cases when a download wasn't started successfully the download urls weren't stored in the meta file so no resume was possible - bugfix: MO tried to resume downloads when it didn't have and download urls - bugfix: downloads couldn't be paused if the download was already broken on the network layer - bugfix: download managear did not recognize a file as downloaded if the download completed before signals were hooked up - bugfix: in-place file replacement was re-broken
* - mod list context menu split into two menus (one for whole list, one for ↵Tannin2014-05-131-4/+4
| | | | | | | | | | | | | | | | | | | selected mods) - added option to combine category filters using "or" - added context menu option for deselecting category filters - slightly changed ui on the category filters - added a sample plugin for cpp that can be built without building the rest of MO - simple installer can now be configured to run without any user interaction - extended interface for python plugins - iorganizer implementation moved out of the main window - nexus requests from plugins will now be identified in the user agent - bugfix: shortcuts created from MO used the wrong working directory - bugfix: deactivation of bsas didn't stick - bugfix: file hiding mechanism wasn't active - bugfix: executables linked on the toolbar couldn't be removed if the executable was removed first - bugfix: the endorsement-filter couldn't be combined with other filters - bugfix: python interface to repository bridge was broken
* - main window now has a small view displaying log messagesTannin2014-05-041-1/+2
| | | | | | | | | | | | | | - mod list will now be highlighted when grouping is active is active - download tooltip now supports bbcode markup in the description - bbcode translator will now translate some named colors - algorithm for detection of mod order problems is now more sophisticated - exposed more functionality to python plugins - updated to qt 4.8.6 dlls - bugfix: plugin list wasn't - bugfix: state changes in mod list wasn't always reported - bugfix: loot client will now create necessary directory - bugfix: NCC sometimes used wrong source path for extracting - bugfix: removed noisy debug message
* - added an option to show meta info on downloads instead of filenamesTannin2014-04-231-5/+33
| | | | | | - MO will now cancel if user tries to run MO vfs-injected - when saving the MO ini file it is now written to a tmp file first and then overwritten - updated to link against boost python 1.55
* - loot integration now displays the reportTannin2014-04-051-16/+22
| | | | | - fixes to the previous merge - bugfix: cli loot didn't handle non-ascii characters correctly
* Merge with branch1.1Tannin2014-04-051-34/+165
|\
| * - bugfix: if resuming a download failed with the server sending a textual ↵Tannin2014-03-181-1/+1
| | | | | | | | | | | | | | | | error message, MO tried to display the whole file inside the error message - bugfix: resuming a download didn't trigger a nexus-login when necessary - bugfix: integrated fomod installer only used the first block of data inside a description
| * - when a download server returns a text file, it's assumed to be an error ↵Tannin2014-01-181-17/+16
| | | | | | | | | | | | | | | | | | | | and the text displayed as an error - save games can now be deleted from inside MO - bugfix: removing the pending download entry failed if the download-url request failed - bugfix: download manager didn't stop automatically resuming failed downloads under certain circumstances - bugfix: uninstalled downloads were treated as not-finished when refreshing the download list - bugfix: updating the filesystem watcher on the saves directory didn't work correctly
| * - added an about dialogTannin2014-01-161-1/+0
| | | | | | | | - updated json library
| * - implemented hook for NtQueryDirectoryFileTannin2014-01-131-2/+4
| | | | | | | | | | | | | | | | - saves list is now automatically updated on FS changes - optimization: data tree widget is no longer filled completely at once but one directory at a time - bugfix: pending downloads were not removed from list after a failed nxm request - bugfix: there was still a nmm.nexusmods.com link - bugfix: the text "alpha" in version strings wasn't interpreted correctly
| * download manager now removed orphaned meta filesTannin2014-01-041-3/+22
| |
| * - nxmhandler will now ask before registering itselfTannin2014-01-041-4/+45
| | | | | | | | | | | | - downloads from nexus are now displayed before file information is retrieved - logging from the ui is now a bit more informative - download list now scrolls to bottom automatically
| * - download manager now saves the file times on nexus, for potential later ↵Tannin2013-12-071-4/+22
| | | | | | | | | | | | | | | | use in version check - nexus interface now supports 301 redirects - now using the new nexus url format - bugfix: "visit on nexus" used an outdated url scheme and thus caused unnecessary redirection
| * - MO now warns if a nxm-link for a wrong game was attempted instead of ↵Tannin2013-10-101-2/+15
| | | | | | | | | | | | downloading the wrong file - bugfix: in nxmhandler adding a new line with different game but same executable didn't work (the change was silently dropped)
| * - new toggle to display hidden downloadsTannin2013-10-101-9/+49
| | | | | | | | | | | | | | | | - hidden downloads can be un-hidden - the installation manager now more thoroughly cleans up the temporary directory after installation - added SkyrimLauncher.exe to the list of auto-detected executables - bugfix: shutting down MO while downloads where active in some occasions didn't work - bugfix: when canceling the only active download the taskbar icon didn't return to normal
| * - hook.dll now doesn't inject to certain applications (currently steam, ↵Tannin2013-10-051-0/+1
| | | | | | | | | | | | | | | | | | | | chrome and firefox) - versioning system improved. Will now report "downgrades" for mods and support a different versioning system (requires manual switch) - updates can now be ignored until a new version is uploaded - new splash screen - bugfix: a few memory leaks (shouldn't account for much) - bugfix: result of GetModuleHandle wasn't zero-terminated in some cases
| * - download progress is now visible in task barTannin2013-09-281-0/+4
| | | | | | | | | | | | | | | | | | - esp-tooltip now lists all masters, highlighting the missing ones - python plugin will now report a problem if the path contains a semicolon - leak detection now (somewaht) works around the fact that we don't always get a stack trace - bugfix: mod meta-file is now reliably created if it was missing - bugfix: parser for nxm-links didn't handle numbers in the mod name - bugfix: small memory leak
* | - added support for mod page pluginsTannin2013-09-151-70/+129
|/ | | | | | | - re-introduced the integrated browser - added a plugin to download from the tes alliance page - the download list now contains the file description - nexus interface now stores cookies persistently to reduce number of required log-ins
* - bugfix: division-by-zero error in the newly introduced server-speed ↵Tannin2013-09-021-1/+3
| | | | | | | calculation - bugfix: temp files extracted during fomod installation were not cleaned up. This still doesn't remove directories - bugfix: fomod installer didn't find the installer xmls because they are in a subdirectory since release 0.99.4
* - mod list can now be sorted by install timeTannin2013-08-311-1/+21
| | | | | - the sorting of download archives wasn't actually by index instead of file time - bugfix: some of the plugins crashed if they failed to create a mod
* - the download manager now registers download speed. Right now this is only usedTannin2013-08-301-0/+14
| | | | | | | | | | | | | to display an average speed on the settings menu - added a python27.dll compiled with vc100. This can now be bundled without introducing more dependencies - bugfix: extracting now stops after an error - bugfix: the way hook.dll caused CREATE_ALWAYS/CREATE_NEW to always write into overwrite could lead to the file being created when the call should have failed (because the file existed and was protected) - bugfix: GetPrivateProfileString does NOT properly report files as missing. This means that the ini-query optimization could optimize away requests that should work - bugfix: fomod installer couldn't display images because they were unpacked to the wrong temporary location - bugfix: When disabling local saves and choosing to delete the saves nothing happened - bugfix: the python plugin couldn't find the pyqt libraries
* - download size is now displayedTannin2013-08-241-0/+10
| | | | | | - multiple esps/mods can now be enabled/disabled at once using space - bugfix: fomod installer didn't compile because of changes to condition checking - bugfix: broken inverse virtual name resolution in case of non-default mod directory
* - bugfix: download manager will now properly pause all downloads on exiting ↵Tannin2013-08-171-2/+42
| | | | | | | the application - bugfix: resumed downloads now get their automatic-retry-count reset - fiddled with condition tests in fomod (not sure if it works right now)
* - caching of downloadwidgets to fix performance problem, currently broken ↵Tannin2013-06-291-21/+74
| | | | | | | | | | | | and disabled - added new state for downloads "uninstalled" for mods that were at one point installed and then removed - user-configured server preference is now used - updated tutorial to account for removal of integrated browser - reverted to qt 4 - using performance optimised findfirstfile on win vista and up - bugfix: it was possible to disable all columns of the mod list - bugfix: hook.dll doesn't load on win xp
* - some fixes for qt5 compatibilityTannin2013-06-201-3/+7
| | | | | | | | | | | | | | | | | | | | | - hook.dll no longer creates a dump and uninstalls it if an exception is reported that doesn't originate from it - NCC used read-only transactions again because otherwise solid archives become unusably slow. - removed the integrated nexus browser - the mod description and motd are now rendered in QTextBrowser. This (and the above) eliminates the dependency on qtwebkit - removed the direct file download for mod files - reduced CPU usage during downloads by invalidating only one column of the download list. This widget still needs to be replaced - added the complete filename as an option for the modname - applications that require elevation can now be started by invoking an elevated secondary ModOrganizer instance - MO will now register nexus file servers and provides a settings dialog to pick preferred servers. (This preference is not used yet) - worked around 1-2 bugs in QSortFilterProxy - handling of nxm links is now done by an external application. This allows the registration of different applications depending on the game - integrated fomod installer now displays the screenshot in a scalable view - bugfix: integrated fomod installer didn't name output files correctly if the name differs from the source name - bugfix: a successful login to nexus was (sometimes?) not correctly detected as a success - bugfix: top-level entries in QtGroupingProxy were sometimes incorrectly displayed as groups - bugfix: GetPrivateProfile... optimization could cause null-pointer indirection - bugfix: GetCurrentWorkingDirectory caused buffer overflow in case of pre-flighting (buffer size 0) - bugfix: configurator plugin now also uses qt5 (it's currently broken though)
* - skyrim-specific optimization to accelerate startupTannin2013-06-051-2/+2
| | | | - bugfix in SetCurrentDirectory hook