Commit graph

657 commits

Author SHA1 Message Date
kichik
0aed504f4a happy new year!
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5917 212acab6-be3b-0410-9dea-997c60f758d6
2009-02-01 14:44:30 +00:00
kichik
130074428e revert r5314 - if the banner plug-in shows IDD_VERIFY in its own thread and that thread sets it as the foreground window because of the WS_VISIBLE style, the main thread loses the ability to set the foreground window. this causes the installer window to start on the background if banner is used in .oninit.
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5915 212acab6-be3b-0410-9dea-997c60f758d6
2009-02-01 12:32:34 +00:00
anders_k
6ade56370b changed RegisterPluginCallback return from BOOL to int to support a more detailed return value
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5879 212acab6-be3b-0410-9dea-997c60f758d6
2008-12-21 19:14:45 +00:00
kichik
7f7dc37264 add NSISCALL definition for external plug-ins not built with scons
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5859 212acab6-be3b-0410-9dea-997c60f758d6
2008-12-20 09:26:16 +00:00
kichik
35eea140f5 GlobalAlloc should get GPTR not LPTR
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5853 212acab6-be3b-0410-9dea-997c60f758d6
2008-12-20 07:54:05 +00:00
kichik
7dd5c2a795 that need not be here (kills LibraryLocal build on gcc)
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5820 212acab6-be3b-0410-9dea-997c60f758d6
2008-12-09 23:11:40 +00:00
kichik
4f8b10e589 gcc fixes
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5819 212acab6-be3b-0410-9dea-997c60f758d6
2008-12-09 23:10:07 +00:00
kichik
316bfe61ae move definitions common to both plug-ins and stubs to api.h (part of patch #2359978)
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5817 212acab6-be3b-0410-9dea-997c60f758d6
2008-12-09 23:01:36 +00:00
kichik
4859b8702e move definitions common to both plug-ins and stubs to api.h (part of patch #2359978)
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5815 212acab6-be3b-0410-9dea-997c60f758d6
2008-12-09 22:53:39 +00:00
kichik
61530710bc add standard license headers
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5813 212acab6-be3b-0410-9dea-997c60f758d6
2008-12-09 22:20:59 +00:00
kichik
4c30821aa5 applied patch #1912699 - "Pinned" / always loaded plugins support
this patch also adds plugin_api_version to exec_flags so your plug-in can now tell if features it needs are available
more plug-ins that need this will be converted once the patch to make both the stubs and the plug-ins use the same header file is in place

git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5809 212acab6-be3b-0410-9dea-997c60f758d6
2008-11-29 22:03:33 +00:00
kichik
ff063a0be9 applied patch #1982084 - wrong UI behaviour on size texts (VS2005)
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5768 212acab6-be3b-0410-9dea-997c60f758d6
2008-11-20 19:20:33 +00:00
kichik
223ea672e1 added and verified another condition - both GetDiskFreeSpace and GetDiskFreeSpaceEx require a trailing backslash
this needs a lot of optimization

git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5678 212acab6-be3b-0410-9dea-997c60f758d6
2008-07-12 17:11:38 +00:00
kichik
dbdba710e6 added a safety mechanism to make sure the new directory rooting loop in DirProc() doesn't loop infinitely
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5676 212acab6-be3b-0410-9dea-997c60f758d6
2008-07-12 16:40:04 +00:00
kichik
f45c62e9a4 applied patch #1992325 - Logging - Change CreateDirectory logging to show recursion
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5651 212acab6-be3b-0410-9dea-997c60f758d6
2008-06-13 17:25:03 +00:00
kichik
c382bd2071 applied patch #1986692 - Close LOG file when LogSet is set to Off.
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5647 212acab6-be3b-0410-9dea-997c60f758d6
2008-06-13 16:31:14 +00:00
kichik
e917306682 size optimization and a bit clearer code
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5639 212acab6-be3b-0410-9dea-997c60f758d6
2008-05-10 10:44:33 +00:00
kichik
931beb47e1 fixed bug #1946112 - Wrong free space calculation
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5638 212acab6-be3b-0410-9dea-997c60f758d6
2008-05-10 10:42:24 +00:00
kichik
da312003a8 reverted last commit
it forced usage of GetDiskFreeSpace instead of GetDiskFreeSpaceEx for non-existent directories or anything GetDiskFreeSpaceEx deemed invalid

git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5602 212acab6-be3b-0410-9dea-997c60f758d6
2008-04-18 22:08:29 +00:00
kichik
6503959ddb partial fix for bug #1946112 - Wrong free space calculation
still need to get the lowest existing directory so C:\mount-point\non-existent-dir still works

git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5601 212acab6-be3b-0410-9dea-997c60f758d6
2008-04-18 21:55:57 +00:00
kichik
2efd32160b fixed bug #1874297 - Error decompressing data! Corrupted installer?
problem was that decompression ended prematurely. instead of waiting for zlib to return Z_STREAM_END, it checked if no more output was required. this could cause a case where zlib wouldn't read its entire stream. in this particular case, the compressed headers were 0x4001 bytes long and compressed data input buffer size is only 0x4000. instead of waiting for another run of inflate() to read the last byte, which is probably eof, _dodecmop() broke the loop and didn't read that extra byte. since loadHeaders() relays on _dodecomp() to read the entire header so it can calculate where the data block begins, all reads from the data block suddenly became off by one, causing "decompression errors".

git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5557 212acab6-be3b-0410-9dea-997c60f758d6
2008-02-23 16:28:23 +00:00
kichik
e3b9d1311b update structure comments
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5556 212acab6-be3b-0410-9dea-997c60f758d6
2008-02-23 15:04:53 +00:00
kichik
db25d86b35 RFE #1795426 - User friendly message for corrupt or incomplete installer
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5459 212acab6-be3b-0410-9dea-997c60f758d6
2007-12-29 18:05:48 +00:00
kichik
9676bb54cd a empty string can be caused by a path like "\boot.ini", so support that as well
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5439 212acab6-be3b-0410-9dea-997c60f758d6
2007-12-22 16:20:06 +00:00
kichik
2675599a31 happy new year!
bug #1855805

git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5429 212acab6-be3b-0410-9dea-997c60f758d6
2007-12-22 09:41:57 +00:00
kichik
916d3ea3a2 fixed bug #1851273 - relative path Delete doesn't work
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5395 212acab6-be3b-0410-9dea-997c60f758d6
2007-12-15 12:24:07 +00:00
kichik
fb217c5b5c declare real calc_percent()'s code just once
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5355 212acab6-be3b-0410-9dea-997c60f758d6
2007-11-09 15:30:08 +00:00
kichik
50b9472841 verification dialog is now never used hidden, so it can show itself using WS_VISIBLE
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5314 212acab6-be3b-0410-9dea-997c60f758d6
2007-10-03 22:08:37 +00:00
kichik
32854c2021 fixed a bug that where __ensuredata processed window messages using MessageLoop.
this could cause synchronization issues when data is decompressed in a page's leave function and the user clicks the next button twice really fast or on a slow computer.
WM_COMMAND would be sent twice and so DialogProc could execute the leave function while the installation thread is running causing interpreter havoc.

for more details:
http://forums.winamp.com/showthread.php?s=&threadid=274333

as always, a few size optimizations were thrown in the loop and the fix actually makes the code smaller


git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5313 212acab6-be3b-0410-9dea-997c60f758d6
2007-10-03 22:07:16 +00:00
kichik
31a9a49502 size optimization - better values for status_update
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5280 212acab6-be3b-0410-9dea-997c60f758d6
2007-09-21 18:20:12 +00:00
kichik
266267ba61 fixed plug-in system's SetDetailsPrint usage
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5277 212acab6-be3b-0410-9dea-997c60f758d6
2007-09-18 22:02:44 +00:00
kichik
b0978fc844 move SetDetailsPrint flag to g_exec_flag and added a lastused capability to EW_SETFLAG
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5268 212acab6-be3b-0410-9dea-997c60f758d6
2007-09-08 17:20:11 +00:00
kichik
e2b948ae02 tabs to spaces and some other minor clean-ups
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5247 212acab6-be3b-0410-9dea-997c60f758d6
2007-08-18 17:15:08 +00:00
joostverburg
842dcbf544 * Use shfolder.dll for CSIDL_COMMON_DOCUMENTS on 95/98 if possible
* Information about API calls for special folders


git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5245 212acab6-be3b-0410-9dea-997c60f758d6
2007-08-18 12:44:23 +00:00
kichik
35e1cf7b86 better solution - don't old functions and not shfolder but still try to get all user's version from the os (though tests show it will return current user's version anyway)
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5238 212acab6-be3b-0410-9dea-997c60f758d6
2007-08-17 16:20:26 +00:00
kichik
b55ecee8cd fixed bug #1766268 - $SMPROGRAMS incorrect on Windows 98
use shfolder.dll only on ME and for all users's $APPDATA for which it was introduced


git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5237 212acab6-be3b-0410-9dea-997c60f758d6
2007-08-17 16:16:40 +00:00
kichik
68abd8a09e buf1, not buf (patch #1768584)
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5234 212acab6-be3b-0410-9dea-997c60f758d6
2007-08-11 17:03:18 +00:00
pabs3
13989c1965 Prevent FTBFS due to using log_printf3 instead of log_printf2
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5220 212acab6-be3b-0410-9dea-997c60f758d6
2007-07-27 00:55:47 +00:00
kichik
7af66a4a9c a bit more logging
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5219 212acab6-be3b-0410-9dea-997c60f758d6
2007-07-24 19:06:34 +00:00
kichik
6b5f50b4d6 let GetStringFromParm call validate_filename
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5201 212acab6-be3b-0410-9dea-997c60f758d6
2007-07-14 10:53:35 +00:00
kichik
edd3c299f7 load shfolder.dll before the script is executed to avoid any usage effects
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5198 212acab6-be3b-0410-9dea-997c60f758d6
2007-07-12 19:15:50 +00:00
kichik
161ac2adf2 fixed bug #1752328 - PFNSHGETFOLDERPATHA is stub only and very Windows, move from Platform.h to util.c
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5197 212acab6-be3b-0410-9dea-997c60f758d6
2007-07-12 16:35:13 +00:00
joostverburg
b5cfb1ce4a moved definition to Platform.h and removed useless function calls
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5196 212acab6-be3b-0410-9dea-997c60f758d6
2007-07-10 21:57:33 +00:00
joostverburg
5648dd2ace When available, use shfolder.dll to get special folder locations. This allows folders like the application data folder for all users to be used on Windows 95/98 when Internet Explorer 5 is installed.
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5195 212acab6-be3b-0410-9dea-997c60f758d6
2007-07-10 21:33:06 +00:00
kichik
9a3d40b9dd and if IPeristFile::Save isn't called, fail
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5193 212acab6-be3b-0410-9dea-997c60f758d6
2007-07-06 10:21:04 +00:00
kichik
5ccacf1781 don't call IPeristFile::Save if MultiByteToWideChar fails
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5192 212acab6-be3b-0410-9dea-997c60f758d6
2007-07-06 10:11:43 +00:00
kichik
05ddf4bfc7 size optimization - use GetStringFromParm instead of wsprintf
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5191 212acab6-be3b-0410-9dea-997c60f758d6
2007-07-06 09:55:20 +00:00
kichik
9d8874cd72 the more common case for SendMessage is ints, so get that first
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5190 212acab6-be3b-0410-9dea-997c60f758d6
2007-07-06 09:31:57 +00:00
kichik
035579824d size optimization - use GetNSISString and GetStringFromParm instead of mystrcat
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5188 212acab6-be3b-0410-9dea-997c60f758d6
2007-07-05 17:43:22 +00:00
kichik
ba9dbe7dab some more information on the EN_MSGFILTER hack
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5184 212acab6-be3b-0410-9dea-997c60f758d6
2007-06-27 18:54:52 +00:00