]> cygwin.com Git - cygwin-apps/setup.git/blame - ChangeLog
* Makefile.am (res.o): Add rule to force rebuild upon change
[cygwin-apps/setup.git] / ChangeLog
CommitLineData
2ae3cf4e
YS
12013-03-03 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
2
3 * Makefile.am (res.o): Add rule to force rebuild upon change
4 to setup.exe.manifest, which is included by res.rc.
5
9b98ba23
CF
62013-02-17 Christopher Faylor <me.cygwin2013@cgf.cx>
7
8 * configure.ac: Rename from configure.in.
9 * configure.in: Delete.
10 * libgetopt++/configure.ac: Rename from configure.in.
11 * libgetopt++/configure.in: Delete.
12 * Makefile.am: Remove ill-advised iniparse.hh change.
13 * libgetopt++/Makefile.am: Use "modern" AM_CPPFLAGS rather than INCLUDES.
14 * inilex.ll: Add autodep token recognition.
15 * iniparse.yy: Handle autodep.
16 * IniDBBuilder.h (autodep): Define for base class.
17 * IniDBBuilderPackage.cc (IniDBBuilderPackage::autodep): Define.
18 * IniDBBuilderPackage.h (IniDBBuilderPackage::autodep): Declare.
19
01d90158
CF
202013-02-17 Christopher Faylor <me.cygwin2013@cgf.cx>
21
22 * Makefile.am: Add regex.c to list of sources.
23 (iniparse.hh): Rename if a iniparse.h has been created.
24 * regex/config.h: New file.
25 * regex/re_comp.h: New file.
26 * regex/regcomp.c: New file.
27 * regex/regex.c: New file.
28 * regex/regex.h: New file.
29 * regex/regex_internal.c: New file.
30 * regex/regex_internal.h: New file.
31 * regex/regexec.c: New file.
32 * processlist.cc (Process::isModuleLoadedInProcess): Avoid compiler
33 warning by changing 'i' to unsigned.
34
6b9b1c33
JT
352013-01-25 Achim Gratz <Stromeko@nexgo.de>
36 * README (HOW TO BUILD): Cross compiler package is now named
37 mingw-gcc-g++, also mention package upx as an optional dependency.
38
ec366f61
JT
392013-02-01 Jon TURNEY <jon.turney@dronecode.org.uk>
40
41 * install.cc ( _custom_MessageBox): Remove custom message box.
42 (FileInuseDlgProc): Add file-in-use dialog box.
43 (installOne): Use processlist to list processes using a file, and
44 offer to kill them with the file-in-use dialog.
45 * res.rc (IDD_FILE_INUSE) : New dialog.
46 * resource.h (IDD_FILE_INUSE, IDC_FILE_INUSE_EDIT)
47 (IDC_FILE_INUSE_MSG, IDC_FILE_INUSE_HELP): Define corresponding
48 resource ID numbers.
49 * processlist.h: New file.
50 * processlist.cc: New file.
51 * Makefile.am (setup_LDADD): Add -lpsapi.
52 (setup_SOURCES): Add new files.
53
f2952a6c
JT
542013-02-01 Jon TURNEY <jon.turney@dronecode.org.uk>
55
56 * script.cc (::run, Script::run): Move the formatting of the command
57 line used for postinstall script running out to Script::run. Move the
58 logging of the command and it's output into ::run.
59 * script.h: Add ::run() prototype.
60
443b9db6
JT
612013-01-17 Jon TURNEY <jon.turney@dronecode.org.uk>
62
63 * configure.in: Require automake 1.12.
64 * Makefile.am (BUILT_SOURCES): Update iniparse.h to iniparse.hh.
65 * iniparse.yy: Ditto.
66 * inilex.ll: Ditto.
67
c0e6cf04
JT
682013-01-16 Jon TURNEY <jon.turney@dronecode.org.uk>
69
70 * threebar.cc (ThreeBarProgressPage::SetBar2): Change from long int to
71 long long int to handle more than 2GB of data.
72 * threebar.h (ThreeBarProgressPage::SetBar2): Update prototype.
73 * install.cc: Change md5sum and install counters to long long int.
74 * geturl.cc: Change download counter to long long int.
75 * geturl.h: Ditto.
76
8b57c909
YS
772012-11-08 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
78
79 * Makefile.am (EXTRA_DIST): Remove libmd5-rfc files.
80 (setup_SOURCES): Ditto.
81 * download.cc: Remove unused include.
82 * csu_util/MD5Sum.cc: Port from libmd5-rfc to libgcrypt.
83 * csu_util/MD5Sum.h: Ditto.
84 * libmd5-rfc/*: Remove.
85
a17ea4ab
YS
862012-10-19 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
87
88 * bootstrap.sh: Add support for i686-w64-mingw32 toolchain.
89 Remove support for gcc-3 -mno-cygwin.
90
0963fbe7
CF
912012-09-12 Christopher Faylor <me.cygwin2012@cgf.cx>
92
93 * README: Modernize.
94 * bootstrap.sh: Remove outdated options from configure. Use mingw
95 compiler.
96 * configure.in: Remove AM_MAINTAINER_MODE.
97
af67048a
YS
982012-09-04 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
99
100 Fix build with mingw-w64 headers.
101 * autoload.c: Define DECLSPEC_IMPORT for mingw-w64 headers.
102 * filemanip.h: Include <sys/types.h> to fix missing mode_t typedef
103 error with mingw-w64 headers.
104 * gpg-packet.cc: Include "win32.h" to avoid macro redefinition
105 errors with mingw-w64 headers.
106 (ARRAYSIZE): Do not redefine.
107 * main.cc (_argv): Declare if using mingw-w64 headers.
108 (WinMain): Move up _argv definition to before it is first used.
109 * ntdll.h: Include PSDK headers with mingw-w64 instead of DDK.
110 * package_message.h: Include "win32.h" instead of <windows.h>.
111 * propsheet.cc (PROPSHEETHEADER_V1_SIZE): Do not redefine.
112 * win32.h: Include <sys/types.h> to fix missing mode_t typedef
113 error with mingw-w64 headers.
114 Define DECLSPEC_IMPORT for mingw-w64 headers.
115
e08abe3f
YS
1162012-08-30 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
117
118 First step towards X86-64 compatibility.
119 * archive_tar.cc (archive_tar::next_file_name): Fix sscanf formats
120 for 64-bit size_t.
121 * choose.cc (ChooserPage::OnMouseWheel): Fix return type.
122 * choose.h (ChooserPage::OnMouseWheel): Ditto.
123 * filemanip.cc (nt_wfopen): Fix argument cast for _open_osfhandle.
124 * netio.cc (auth_proc): Fix return type.
125 * proppage.cc (PropertyPage::FirstDialogProcReflector): Fix return type.
126 Use SetWindowLongPtr and DWLP_* instead of SetWindowLong and DWL_*.
127 (PropertyPage::DialogProcReflector): Ditto.
128 (PropertyPage::DialogProc): Ditto.
129 (PropertyPage::OnMouseWheel): Ditto.
130 * proppage.h (PropertyPage::FirstDialogProcReflector): Fix return type.
131 (PropertyPage::DialogProcReflector): Ditto.
132 (PropertyPage::DialogProc): Ditto.
133 (PropertyPage::OnMouseWheel): Ditto.
134 * site.cc (drop_proc): Fix return type.
135 * window.cc (Window::FirstWindowProcReflector): Use GWLP_* with
136 SetWindowLongPtr calls.
137 (Window::WindowProcReflector): Ditto.
138
c0e55e84
YS
1392012-08-30 Jacek Caban <jacek@codeweavers.com>
140 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
141
142 * main.cc: Remove CINTERFACE define.
143 (main_display): Use C++ syntax for COM.
144 * mklink2.cc: Remove CINTERFACE define.
145 (make_link_2): Use C++ syntax for COM.
146
6c4d8cf3
CF
1472012-08-21 Christopher Faylor <me.cygwin2012@cgf.cx>
148
149 * setup.exe.manifest: Reorder "supportedOS" entries and add entry for
150 Windows 8.
151
5db899f0
CF
1522012-06-03 Christopher Faylor <me.cygwin2012@cgf.cx>
153
154 * main.cc: Remove __CYGWIN__ ifdefs.
155 (main): Ditto.
156
e07b6f3d
YS
1572012-06-01 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
158
159 * Makefile.am (setup_version.c): Respect silent rules.
160 (.rc.o): Ditto.
161 * configure.in: Enable silent rules with automake-1.11.
162
490f6998
CF
1632012-04-29 Christopher Faylor <me.cygwin2012@cgf.cx>
164
165 * window.cc: Remove trailing whitespace.
166
27f40a12
CF
1672012-04-28 Christopher Faylor <me.cygwin2012@cgf.cx>
168
169 * io_stream_file.cc (io_stream_file::exists): Properly treat return
170 from GetFileAttributesW as a bit field so that a directory will not be
171 seen as "existing".
172
7005f56d
CV
1732012-04-26 Corinna Vinschen <corinna@vinschen.de>
174
175 * script.cc (run): Add quotes around file to allow spaces in path.
176 (Script::run): Add aforementioned quotes to log output as well.
177
42c2254e
CV
1782012-03-08 Corinna Vinschen <corinna@vinschen.de>
179
180 * win32.h (FACTOR): Define, use correct value.
181 (NSPERSEC): Ditto.
182 * archive_tar.cc: Drop FACTOR and NSPERSEC definitions here.
183 * io_stream_cygfile.cc: Ditto.
184 * io_stream_file.cc: Ditto.
185
d285d991
CV
1862012-02-29 Corinna Vinschen <corinna@vinschen.de>
187
188 * win32.cc (NTSecurity::GetPosixPerms): Don't allow write permissions
189 in inheritable default permission ACEs for group and other if the
190 directory is an S_ISVTX dir.
191
4a8be6e0
CF
1922012-02-24 Christopher Faylor <me.cygwin2012@cgf.cx>
193
194 * bootstrap.sh: Don't assume that libgetopt++ exists in source directory.
195 * configure.in: Remove some old options.
196 * Makefile.am: Ditto.
197 * libgetopt++/Makefile.am: Ditto.
198 * libgetopt++/configure.in: Ditto.
199
befc9dd8
CV
2002012-02-24 Corinna Vinschen <corinna@vinschen.de>
201
202 * main.cc (WinMain): Move call to nt_sec.setDefaultSecurity here so
203 it's called earlier in the process. This avoids spurious error
204 messages in --help output.
205
34d534a6
JT
2062012-02-23 Jon TURNEY <jon.turney@dronecode.org.uk>
207
befc9dd8
CV
208 * main.cc (main_display): Move --help output from here ...
209 (WinMain): ... to here, so we don't logging of the current directory
210 and any errors from constructing a UserSettings object preceding the
211 --help output.
34d534a6 212
7c05cfce
JT
2132011-05-30 SZAVAI Gyula <szgyg@ludens.elte.hu>
214
befc9dd8
CV
215 * site.cc (SiteSetting::SiteSetting): Handle multiple
216 --site options.
217 * crypto.cc (verify_ini_file_sig): Handle multiple
218 --pubkey and --sexpr-pubkey options.
219 * package_meta.cc (packagemeta::isManuallyWanted): Handle
220 multiple --packages and --categories options.
7c05cfce 221
a323e5c6
CF
2222012-02-22 Christopher Faylor <me.cygwin2012@cgf.cx>
223
224 * res.rc: Change copyright notice to -2012.
225
c6bf266d
CV
2262012-02-19 Corinna Vinschen <corinna@vinschen.de>
227
228 * PickView.cc (PickView::list_click): Mark variable refresh as unused
229 to avoid compiler warning.
230 * nio-ftp.cc (NetIO_FTP::ok): Remove variable code to avoid compiler
231 warning.
232 * proppage.cc (PropertyPage::DialogProc): Ditto for retval.
233
234 * setup.exe.manifest: Add supportedOS entries to avoid annoying
235 "This program might not have installed correctly" PCA message on
236 Windows 7.
237
a2651d16
CF
2382011-12-22 Christopher Faylor <me.cygwin2011@cgf.cx>
239
240 * compress.cc: Explicitly include needed header.
241 * compress_bz.cc: Ditto.
242 * mkdir.h: Ditto.
243 * io_stream_cygfile.cc: Eliminate obsolete attempt to build as
244 non-mingw.
245 * io_stream_file.cc: Ditto throughout.
246 * mkdir.cc: Ditto.
247
6b412778
JT
2482011-12-21 Jon TURNEY <jon.turney@dronecode.org.uk>
249
250 * choose.cc (OnInit): Properly mark packages which were selected on
251 command line in unattended mode for download and installation.
252
4f6bf4f0
CF
2532011-09-08 Christopher Faylor <me.cygwin2011@cgf.cx>
254
255 * io_stream.h: Just call sys/types.h here rather than using our own
256 version of ssize_t.
257
fd90f0ee
CV
2582011-09-01 Corinna Vinschen <corinna@vinschen.de>
259
260 * CONTRIBUTORS: Add Warren Young.
261
052706d7 2622011-08-16 Corinna Vinschen <corinna@vinschen.de>
fd90f0ee 263 Warren Young <warren@etr-usa.com>
052706d7
CV
264
265 * cygwin-setup.ico: Slightly modified.
266 * cygwin-terminal.ico: Ditto.
267
49d90df7 2682011-08-15 Corinna Vinschen <corinna@vinschen.de>
fd90f0ee 269 Warren Young <warren@etr-usa.com>
243f3cc1 270
49d90df7 271 * cygwin.ico: New, smoother 152x152 icon.
243f3cc1 272
49d90df7 2732011-08-13 Jon TURNEY <jon.turney@dronecode.org.uk>
db9818d7 274
49d90df7
CV
275 * choose.cc (OnInit, createListview): Build the initial list of packages
276 to install in OnInit() not in CreateListView(). If packages were
277 selected on command line in unattended mode, just install those
278 packages.
279 * package_db.h (packagedb): Add addCommandLinePackages() method.
280 * package_db.cc (addCommandLinePackages): Add separate method to add
281 these so we can indicate if packages were added on the command line.
282
2832011-08-13 Jon TURNEY <jon.turney@dronecode.org.uk>
284
285 * PickView.cc (defaultTrust): Move implementation which deals with
286 package db from here...
287 * package_db.cc (defaultTrust): ... to here.
288 * package_db.h (packagedb): ... a new member function.
db9818d7 289
4dd4c7c9
CV
2902011-08-12 Corinna Vinschen <corinna@vinschen.de>
291
292 * res.rc: Move spash icon slightly. Fix copyright.
293
c0c58ffa 2942011-08-12 Corinna Vinschen <corinna@vinschen.de>
fd90f0ee 295 Warren Young <warren@etr-usa.com>
c0c58ffa
CV
296
297 * cygwin-setup.ico: New file.
298 * cygwin-terminal.ico: New file.
299 * cygwin.ico: New icons.
300 * desktop.cc (make_link): Take additional argument to take arguments
301 for shortcut. Append arg to argbuf.
302 (start_menu): Take additional argument to take argments for shortcut.
303 Add to call to make_link.
304 (desktop_icon): Ditto.
305 (save_icon): Take path and name of resource as arguments. Replace
306 Cygwin icon if it's the old one.
307 (do_desktop_setup): Save Cygwin standalone and Cygwin terminal icons.
308 Rename desktop and start menu shortcut name to "Cygwin Terminal", use
309 the cygwin terminal icon for them, and point them to mintty.
310 * res.rc: Change splash icon to keep size of original icon.
311 (IDI_CYGWIN_SETUP): New entry.
312 (IDI_CYGWIN_TERMINAL): New entry.
313 (CYGWIN-SETUP.ICON): New entry.
314 (CYGWIN-TERMINAL.ICON): New entry.
315 * resource.h (IDI_CYGWIN_SETUP): Define.
316 (IDI_CYGWIN_TERMINAL): Define.
317
2a252c4f
JT
3182011-07-25 Jon TURNEY <jon.turney@dronecode.org.uk>
319
320 * install.cc (do_install_thread): Only set progress bar output if at least
321 one package gets installed, to avoid a cosmetic issue.
322
bb4d8a4f
CV
3232011-07-25 Corinna Vinschen <corinna@vinschen.de>
324
325 * desktop.cc (make_link): Create shortcuts to command.com only on 9x.
326
32d90d0c 3272011-07-20 Andy Koppe <andy.koppe@gmail.com>
ec9c1d70
AK
328
329 * res.rc: Remove Prev button from chooser page.
330 * resource.h: Reflect removal of Prev button.
331 * package_meta.h (trustp): Ditto.
332 * choose.cc: Ditto.
333
39ae968f
JT
3342011-04-24 Jon TURNEY <jon.turney@dronecode.org.uk>
335
befc9dd8
CV
336 * download.cc (do_download_thread): Update progress display
337 when download phase starts
39ae968f 338
71d30974
JT
3392011-04-24 Jon TURNEY <jon.turney@dronecode.org.uk>
340
befc9dd8
CV
341 * install.cc (do_install_thread): Report overall progress while
342 md5summing packages.
71d30974 343
dda929ee
JT
3442011-04-08 Jon TURNEY <jon.turney@dronecode.org.uk>
345
befc9dd8 346 * archive_tar_file.cc (read): Handle short reads
dda929ee 347
fe9a0ef9
JT
3482011-04-08 Jon TURNEY <jon.turney@dronecode.org.uk>
349
befc9dd8
CV
350 * compress_bz.h (compress): Remove unused bufN member.
351 * compress_bz.cc (read): Handle bzip2 files containing multiple
352 streams
fe9a0ef9 353
93bf34cd
JT
3542011-04-08 Jon TURNEY <jon.turney@dronecode.org.uk>
355
befc9dd8
CV
356 * install.cc (extract_replace_on_reboot): New function containg code
357 extracted from...
358 (installOne): Report read errors differently to write errors
359 * archive.cc (extract_file): Distinguish read errors from write errors
93bf34cd 360
9e9bdee2
JT
3612011-04-08 Jon TURNEY <jon.turney@dronecode.org.uk>
362
befc9dd8 363 * io_stream.cc (copy): Propagate errors.
9e9bdee2 364
30f42053
JT
3652011-04-08 Jon TURNEY <jon.turney@dronecode.org.uk>
366
befc9dd8
CV
367 * compress_bz.cc (read, peek): Consistently return -1 and set lasterr
368 on an error.
369 * compress_gz.cc (read, write, peek): Ditto.
30f42053 370
99c0e3de
JT
3712011-04-08 Jon TURNEY <jon.turney@dronecode.org.uk>
372
befc9dd8
CV
373 * archive_tar_file.cc (read, write, peek, seek): Consistently return -1
374 and set lasterr on an error.
99c0e3de 375
570accc4
JT
3762011-01-02 Jon TURNEY <jon.turney@dronecode.org.uk>
377
befc9dd8 378 * crypto.c (ExtraKeyOption): Correct option description.
570accc4 379
19cd8e05
JT
3802010-12-16 Jon TURNEY <jon.turney@dronecode.org.uk>
381
382 * prereq.cc (OnNext, whatNext, OnUnattended): Fix PrereqPage::OnUnattended()
383 so PrereqPage behaves correctly in unattended modes.
384 * prereq.h (PrereqPage): Ditto
385 * proppage.cc (DialogProc): Update comment to clarify meaning of
386 OnUnattended() returning 0.
387
d4818fbe
JT
3882010-11-26 Jon TURNEY <jon.turney@dronecode.org.uk>
389
befc9dd8
CV
390 * site.cc (init): Canonicalize mirror URLs to ensure the end
391 with a '/'.
d4818fbe 392
263157cb
JT
3932010-11-19 Jon TURNEY <jon.turney@dronecode.org.uk>
394
befc9dd8
CV
395 * IniDBBuilderPackage.cc (IniDBBuilderPackage): Remove db.packages vector
396 sorting.
397 (buildPackage, buildPackageSource): Change package collection from vector
398 to map.
399 * PickView.cc (setViewMode, init_headers, defaultTrust): Ditto.
400 * choose.cc (createListview, logResults, keepClicked)
401 (changeTrust): Ditto
402 * install.cc (do_install_thread): Ditto
403 * download.cc (do_download_thread): Ditto
404 * prereq.cc (isMet): Ditto
405 * package_meta.cc (ScanDownloadedFiles): Ditto
406 * package_db.h (packagedb): Ditto
407 * package_db.cc (packagedb, flush, markUnVisited, setExistence)
408 (fillMissingCategory): Ditto
409 (findBinary, findSource): Rewrite to locate packages in map rather than
410 searching the whole vector, for performance.
411 (ConnectedLoopFinder, doIt, visit): Rewrite to refer to package using a
412 packagemeta *, as an index into the vector of packages can no longer be
413 used.
263157cb 414
c9c19491
CV
4152010-11-25 Corinna Vinschen <corinna@vinschen.de>
416
417 * package_db.cc (ConnectedLoopFinder::doIt): Drop hardcoded base-cygwin
418 dependency setting. Fix comment.
419
f27b921b
CV
4202010-11-23 Corinna Vinschen <corinna@vinschen.de>
421
422 * package_db.cc (ConnectedLoopFinder::doIt): Drop hardcoded base-passwd
423 dependency setting. Fix condition for base-cygwin string check.
424
561005e2
JT
4252010-11-06 Jon TURNEY <jon.turney@dronecode.org.uk>
426
befc9dd8
CV
427 * package_meta.h (packagemeta): Remove unused member variables for
428 storing timestamp of the setup.ini that package version came from.
429 * package_meta.cc (packagemeta): Ditto.
561005e2 430
e15fb0ab
JT
4312010-11-06 Jon TURNEY <jon.turney@dronecode.org.uk>
432
befc9dd8
CV
433 * package_version.h (packageversion): Add compareVersion() utility
434 function.
435 * package_version.cc (Vendor_version, Package_version)
436 (compareVersions): Implement the Vendor_version() and Package_version()
437 accessor functions. Add compareVersions() utility function.
438 * cygpackage.cc (setCanonicalVersion): Fix to extract vendor version
439 correctly.
440 * IniDBBuilderPackage.cc (add_correct_version): When multiple setup.ini's
441 offer different packages for the same stability level, use the package with
442 the highest version number rather than the package coming from the setup.ini
443 with the latest timestamp.
e15fb0ab 444
ad20ac46
JT
4452010-11-19 Jon TURNEY <jon.turney@dronecode.org.uk>
446
befc9dd8
CV
447 * choose.cc (OnNext): Remove PrereqChecker call, instead use new
448 WM_APP_PREREQ_CHECK state of Progress dialog.
449 * threebar.h (WM_APP_PREREQ_CHECK)
450 (WM_APP_PREREQ_CHECK_THREAD_COMPLETE): Add new messages.
451 * threebar.cc (OnActivate, OnMessageApp): Use single bar mode for
452 WM_APP_PREREQ_CHECK state. Handle new messages.
453 * dialog.h (do_prereq_check_thread): Add prototype.
454 * prereq.cc (isMet, do_prereq_check_thread)
455 (do_prereq_check_reflector, do_prereq_check): Add progress reporting
456 during isMet, and thread containing moved PrereqChecker code.
ad20ac46 457
57fd5d5a
JT
4582010-11-17 Jon TURNEY <jon.turney@dronecode.org.uk>
459
befc9dd8
CV
460 * package_meta.cc (set_action): Always set the binary tick box
461 when selecting a specific version (if binary is available)
57fd5d5a 462
29756e36
JT
4632010-11-17 Jon TURNEY <jon.turney@dronecode.org.uk>
464
befc9dd8
CV
465 * postinstall.cc (do_postinstall_thread): Refer to "Unknown package"
466 rather than "No package"
29756e36 467
6ab6abae
CF
4682010-11-19 Christopher Faylor <me+cygwin@cgf.cx>
469
470 Throughout, change all occurrences of "PostMessage" to PostMessageNow.
471 This works around problem where w32api uses a #define which calls the
472 Windows API version of PostMessage directly, confusing g++ 3.4.4.
473
d1b5a517
JT
4742010-11-07 Jon TURNEY <jon.turney@dronecode.org.uk>
475
befc9dd8
CV
476 * propsheet.cc (PropSheetProc): Set the big icon for the propsheet
477 window
d1b5a517 478
10087ff4
JT
4792010-11-07 Jon TURNEY <jon.turney@dronecode.org.uk>
480
befc9dd8
CV
481 * ini.cc (GuiParseFeedback::progress, GuiParseFeedback::iniName):
482 Update all the text in the progress dialog whilst parsing .ini file,
483 not just the top line.
10087ff4 484
6f68f70f
JT
4852010-11-07 Jon TURNEY <jon.turney@dronecode.org.uk>
486
befc9dd8
CV
487 * choose.cc (OnBack): Move PlaceDialog(false) so window is resized in
488 'Install from Local Directory' mode as well.
6f68f70f 489
460dd5de
JT
4902010-11-06 Jon TURNEY <jon.turney@dronecode.org.uk>
491
befc9dd8 492 * res.rc (IDD_NET): Make text referring to IE5 more general
460dd5de 493
3e4ddc99
JT
4942010-11-04 Jon TURNEY <jon.turney@dronecode.org.uk>
495
496 * compress_bz.h (compress): Add endReached flag.
497 * compress_bz.cc (read, compress_bz): Use endReached flag to return 0
498 for a read when EOF has been reached, after BZ2_bzDecompress returns
499 BZ_STREAM_END, rather than continue to try to call BZ2_bzDecompress
500 beyond the end of the compressed data, generating a BZ_SEQUENCE_ERROR.
501 * ini.cc (do_remote_ini): Now that bz2_stream doesn't always have a
502 spurious error, detect and report if an error occurred decompressing.
503
db09d718
CV
5042010-09-13 Václav Haisman <v.haisman@sh.cvut.cz>
505
506 * propsheet.cc (PropSheet::SetActivePage): Remove :: from call to
507 PropSheet_SetCurSel.
508 (PropSheet::SetActivePageByID): Remove :: from call to
509 PropSheet_SetCurSelByID.
510 (PropSheet::SetButtons): Remove :: from call to PropSheet_SetWizButtons.
511 (PropSheet::PressButton): Remove :: from call to PropSheet_PressButton.
512
287bd4b1
YS
5132010-09-07 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
514
515 * postinstall.cc: Add #include <algorithm> to fix build with gcc-4.x.
516
b14b3aeb
JT
5172010-08-29 Jon TURNEY <jon.turney@dronecode.org.uk>
518
519 * postinstall.cc (do_postinstall_thread): Don't run postinstall
520 scripts belonging to a just installed package twice.
521 * script.h (Script): Add operator ==
522
c3d07c13 5232010-08-25 Andy Koppe <andy.koppe@gmail.com>
7d489bb2 524
c3d07c13
AK
525 * script.cc (init_run_script): Set CYGWINFORALL="-A" for
526 postinstall/preremove scripts when installing for all users.
527
5541e189
AK
5282010-08-19 Andy Koppe <andy.koppe@gmail.com>
529
530 * package_meta.h (packagemeta::trustp): Update non-experimental
531 packages too when Exp is selected.
532
e9ed14d1
AK
5332010-08-18 Andy Koppe <andy.koppe@gmail.com>
534
535 * res.rc (IDD_PREREQ): Say "Resolving Dependencies" instead of
536 "Unmet Dependencies found"
537 * prereq.cc (PrereqPage::OnNext): Tone down message box about
538 missing dependencies.
539
03d6505f
AK
5402010-08-15 Andy Koppe <andy.koppe@gmail.com>
541
542 * postinstall.cc (PostInstallResultsPage::OnNext):
543 Remove postinstall script error message box.
544 * res.rc (IDS_POSTINSTALL): Try to make postinstall errors
545 less scary.
546
2d598be1
YS
5472010-08-11 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
548
549 * bootstrap.sh: Allow running from a builddir. Run configure
550 unless NOCONFIGURE is defined.
551 * doconfigure: Remove.
552 * Makefile.am (EXTRA_DIST): Remove doconfigure.
553 * README: Document that bootstrap.sh runs configure.
554 Remove reference to doconfigure.
555
c63e8b4a
YS
5562010-08-10 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
557
558 * configure.in: Check for prerequisites' headers.
559 * Makefile.am: Remove libinilex.a library, instead...
560 (inilint_SOURCES): Add inilex.ll. (setup_SOURCES): Ditto.
561 * inilex.ll: Use option nounput to avoid "defined but not used"
562 warning from yyunput().
563
10b2d051
YS
5642010-08-10 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
565
566 Fix compatibility with GCC 4.x.
567 * Makefile.am (setup_LDFLAGS): Pass -static to compiler instead of
568 linker so that libgcc is statically linked as well.
569 (autoload.o): Disable optimization.
570 * localdir.cc (browse_cb): Fix "jump to case label crosses
571 initialization" error.
572 * mklink2.cc (sfli): Fix "non-local variable uses anonymous type"
573 warning.
574 * ntdll.h: Fix "redeclared without dllimport attribute: previous
575 dllimport ignored" warnings.
576 * package_message.h (display): Fix "'exit' was not declared in this
577 scope" error.
578
fe434e30
YS
5792010-08-10 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
580
581 * Makefile.am: Treat libgetopt++ as full-fledged SUBDIRS.
582 (setup_LDADD): Always link against included libgetopt++.
583
1f673500
CV
5842010-08-08 Corinna Vinschen <corinna@vinschen.de>
585
586 * prereq.cc (PrereqChecker::getUnmetString): Improve dependency list
587 output.
588
c7c6e034
AK
5892010-08-07 Andy Koppe <andy.koppe@gmail.com>
590
591 * prereq.cc (PrereqChecker::isMet): Find unmet indirect
592 dependencies too.
593
9dc2b7e9
AK
5942010-08-06 Andy Koppe <andy.koppe@gmail.com>
595
596 * res.rc (IDS_VIEWBUTTON_TOOLTIP): Rename "Partial" view
597 to "Pending" (again).
598
8399bd2d
AK
5992010-08-05 Andy Koppe <andy.koppe@gmail.com>
600
601 * res.rc (IDD_PREREQ DIALOG): Tweak wording on dependency page.
602
d57da7e1
DK
6032010-07-31 Dave Korn <dave.korn.cygwin@gmail.com>
604
605 * install.cc (Installer::installOne): Also record zero-sized
606 tarballs as successfully installed.
607
3a71ab77
JT
6082010-07-30 Jon TURNEY <jon.turney@dronecode.org.uk>
609
a127a91e 610 * postinstall.cc (do_postinstall_reflector): Fix typo.
3a71ab77 611
b06628c5
CF
6122010-07-30 Christopher Faylor <me+cygwin@cgf.cx>
613
614 * inilex.ll: Allow "~" in a string.
615
7d3de3ed
JT
6162010-07-29 Jon TURNEY <jon.turney@dronecode.org.uk>
617
a127a91e
CF
618 * resource.h (IDD_POSTINSTALL, IDC_POSTINSTALL_EDIT): Add resource
619 identifiers for postinstall results page.
620 * res.rc (IDD_POSTINSTALL): Add dialog resource for postinstall results
621 page.
622 * postinstallresults.h: New file.
623 * postinstallresults.cc: New file.
624 * main.cc (main_display): Add a PostInstallResultsPage to the wizard.
625 * Makefile.am (setup_SOURCES): Add new files.
626 * threebar.cc (OnMessageApp): Allow WM_APP_POSTINSTALL_THREAD_COMPLETE
627 to select the next page shown.
628 * postinstall.cc (do_postinstall_thread)
629 (do_postinstall_reflector): Collect results of running scripts and
630 compose a reporting message which we pass to the postinstall results
631 page. Select postinstall results page next if there are results to
632 show, otherwise desktop setup page as before.
633 * script.cc (run): Don't rename as .done scripts which didn't run
634 successfully.
7d3de3ed 635
5a2eaf00
AK
6362010-07-26 Andy Koppe <andy.koppe@gmail.com>
637
a127a91e 638 * PickView.cc (PickView::views::caption): Rename "Partial" view
5a2eaf00
AK
639 to "Pending".
640 * res.rc (IDS_VIEWBUTTON_TOOLTIP): Ditto.
641
6422010-07-22 Andy Koppe <andy.koppe@gmail.com>
2c4487b3
CV
643
644 * PickPackageLine.cc (PickPackageLine::{click,set_action}):
645 Don't trigger automatic package selection when clicking on
646 packages or categories on chooser screen.
647 * PickCategoryLine.cc (PickCategoryLine::click): No more need to
648 prepare for automatic package selection with markUnVisited().
649 * res.rc: Drop "Warning!" from caption of Resolve Dependencies
650 screen.
651
65fa35d4
DK
6522010-04-17 Dave Korn <dave.korn.cygwin@gmail.com>
653
654 * root.cc (RootPage::OnNext): Don't construct a packagedb here nor
655 do deferred initialisation of static packagedb::task.
656 * source.cc (save_dialog): Don't construct a packagedb here, and
657 set static packagedb::task directly instead of chosen_db_task.
658 * package_meta.cc (packagemeta::action_caption): Don't bother to
659 construct a packagedb here, just access packagedb::task directly.
660 * package_db.cc: Move 'static members' comment near static members.
661 (chosen_db_task): Delete.
662 * package_db.h (chosen_db_task): Don't declare extern.
663 (packagedb): Extend comments on class.
664
8baf5374
DK
6652010-04-14 Dave Korn <dave.korn.cygwin@gmail.com>
666
667 * PickView.cc (PickView::WindowProc): Delete inadvertently-committed
668 debug logging.
669
325bb73a
DK
6702010-04-13 Dave Korn <dave.korn.cygwin@gmail.com>
671
672 * PickView.h (PickView::set_vscroll_info): Add prototype.
673 (PickView::hasClientRect): Rename from this ...
674 (PickView::hasWindowRect): ... to this ...
675 (PickView::lastClientRect): ... and from this ...
676 (PickView::lastWindowRect): ... to this.
677 * PickView.cc (PickView::PickView): Adjust member init to match.
678 (PickView::set_vscroll_info): Abstract code to set vertical scroll
679 bar proportions from ...
680 (PickView::list_click): ... here. Call it. Fix comment typo.
681 (PickView::WindowProc): Update all renamed variables in WM_SIZE
682 case, and check also for a y delta, calling set_vscroll_info if so.
683
67ce5bee
DK
6842010-04-13 Dave Korn <dave.korn.cygwin@gmail.com>
685
686 * window.cc (Window::Window): Initialise BusyCount and BusyCursor.
687 (Window::SetBusy): Set hourglass cursor, counting nested activations.
688 (Window::ClearBusy): Cancel one call to SetBusy and restore original
689 cursor if no longer busy.
690 * window.h (Window::BusyCount): New data member.
691 (Window::OldCursor): Likewise.
692 (Window::BusyCursor): Likewise.
693 (Window::SetBusy): Prototype.
694 (Window::ClearBusy): Likewise.
695 * choose.cc (ChooserPage::createListview): Invoke busy cursor
696 around long-running operation.
697 (ChooserPage::OnInit): Likewise.
698 (ChooserPage::changeTrust): Likewise.
699 * PickCategoryLine.cc (PickCategoryLine::set_action): Likewise.
700
644ca185
CF
7012010-04-08 Christopher Faylor <me+cygwin@cgf.cx>
702
703 * bootstrap.sh: Always reconfigure in libgetopt++.
704
705 * Makefile.am: Remove old code for direct copying to sourceware. Add
706 -src to source tarball.
707
d7406b7d
CV
7082010-04-07 Matthias Andree <matthias.andree@gmx.de>
709
710 * README (HOW TO BUILD): Mention mingw-lib{gcrypt,lzma}-devel.
711
712 * res.rc (IDD_DESKTOP): Move Installation Status line,
713 IDC_STATUS_HEADER and IDC_STATUS up 20 units, make IDC_STATUS text
714 20 units taller and 40 units wider so that IDS_REBOOT_REQUIRED
715 message fits the screen.
716 * res.rc (IDD_SPLASH): Bump copyright years in IDC_SLASH_COPYR to
717 "2000-2010".
718
2b411596
CV
7192010-04-07 Corinna Vinschen <corinna@vinschen.de>
720
721 * install.cc (create_allow_protected_renames): New function to
722 create AllowProtectedRenames registry entry.
723 (Installer::installOne): Call create_allow_protected_renames if former
724 call to MoveFileEx was successful.
725
1e0f90f9
CW
7262010-03-18 Charles Wilson <cygwin@cwilson.fastmail.fm>
727
728 Use external crypto libraries
729 * Makefile.am: Remove local libgcrypt and libgpg-error
730 source directories from AM_CPPFLAGS.
731 * configure.ac: Remove libgcrypt and libgpg-error subdirs
732 from AC_CONFIG_SUBDIRS. Remove now-unnecessary cruft.
733 * doconfigure: Specify gcc-3 and g++-3. Set PATH when $build
734 is cygwin, so that correct (mingw) libgcrypt and libgpg-error
735 config scripts can be used.
736
737 Remove libgpg-error.
738 * libgpg-error/tests/Makefile.am, libgpg-error/tests/Makefile.in,
739 libgpg-error/tests/t-strerror.c, libgpg-error/tests/t-syserror.c,
740 libgpg-error/po/ChangeLog, libgpg-error/po/LINGUAS,
741 libgpg-error/po/Makefile.in.in, libgpg-error/po/Makevars,
742 libgpg-error/po/POTFILES.in, libgpg-error/po/Rules-quot,
743 libgpg-error/po/boldquot.sed, libgpg-error/po/de.gmo,
744 libgpg-error/po/de.po, libgpg-error/po/en@boldquot.header,
745 libgpg-error/po/en@quot.header, libgpg-error/po/fr.gmo,
746 libgpg-error/po/fr.po libgpg-error/po/insert-header.sin,
747 libgpg-error/po/libgpg-error.pot, libgpg-error/po/pl.gmo,
748 libgpg-error/po/pl.po, libgpg-error/po/quot.sed,
749 libgpg-error/po/remove-potcdate.sin, libgpg-error/po/ro.gmo,
750 libgpg-error/po/ro.po libgpg-error/po/stamp-po,
751 libgpg-error/po/sv.po, libgpg-error/po/vi.gmo,
752 libgpg-error/po/vi.po, libgpg-error/po/sv.gmo,
753 libgpg-error/m4/ChangeLog, libgpg-error/m4/Makefile.am,
754 libgpg-error/m4/ac_prog_cc_for_build.m4, libgpg-error/m4/autobuild.m4,
755 libgpg-error/m4/codeset.m4, libgpg-error/m4/gettext.m4,
756 libgpg-error/m4/glibc2.m4, libgpg-error/m4/glibc21.m4,
757 libgpg-error/m4/iconv.m4, libgpg-error/m4/intdiv0.m4,
758 libgpg-error/m4/intmax.m4, libgpg-error/m4/inttypes-h.m4,
759 libgpg-error/m4/inttypes-pri.m4, libgpg-error/m4/inttypes.m4,
760 libgpg-error/m4/inttypes_h.m4, libgpg-error/m4/isc-posix.m4,
761 libgpg-error/m4/lcmessage.m4, libgpg-error/m4/lib-ld.m4,
762 libgpg-error/m4/lib-link.m4, libgpg-error/m4/lib-prefix.m4,
763 libgpg-error/m4/libtool.m4, libgpg-error/m4/lock.m4,
764 libgpg-error/m4/longdouble.m4, libgpg-error/m4/longlong.m4,
765 libgpg-error/m4/nls.m4, libgpg-error/m4/po.m4,
766 libgpg-error/m4/printf-posix.m4, libgpg-error/m4/progtest.m4,
767 libgpg-error/m4/signed.m4, libgpg-error/m4/size_max.m4,
768 libgpg-error/m4/stdint_h.m4, libgpg-error/m4/uintmax_t.m4,
769 libgpg-error/m4/ulonglong.m4, libgpg-error/m4/visibility.m4,
770 libgpg-error/m4/wchar_t.m4, libgpg-error/m4/wint_t.m4,
771 libgpg-error/m4/xsize.m4, libgpg-error/m4/Makefile.in,
772 libgpg-error/lang/Makefile.am, libgpg-error/lang/README,
773 libgpg-error/lang/Makefile.in, libgpg-error/lang/cl/Makefile.am,
774 libgpg-error/lang/cl/README, libgpg-error/lang/cl/gpg-error-package.lisp,
775 libgpg-error/lang/cl/gpg-error.asd, libgpg-error/lang/cl/gpg-error.asd.in,
776 libgpg-error/lang/cl/gpg-error.lisp, libgpg-error/lang/cl/mkerrcodes.awk,
777 libgpg-error/lang/cl/Makefile.in, libgpg-error/src/Makefile.am,
778 libgpg-error/src/README, libgpg-error/src/code-from-errno.c,
779 libgpg-error/src/code-to-errno.c, libgpg-error/src/err-codes.h,
780 libgpg-error/src/err-codes.h.in, libgpg-error/src/err-sources.h,
781 libgpg-error/src/err-sources.h.in, libgpg-error/src/errnos.in,
782 libgpg-error/src/gettext.h, libgpg-error/src/gpg-error-config.in,
783 libgpg-error/src/gpg-error.c, libgpg-error/src/gpg-error.def,
784 libgpg-error/src/gpg-error.h, libgpg-error/src/gpg-error.h.in,
785 libgpg-error/src/gpg-error.m4, libgpg-error/src/init.c,
786 libgpg-error/src/mkerrcodes.awk, libgpg-error/src/mkerrcodes.c,
787 libgpg-error/src/mkerrcodes1.awk, libgpg-error/src/mkerrcodes2.awk,
788 libgpg-error/src/mkerrnos.awk, libgpg-error/src/mkheader.awk,
789 libgpg-error/src/mkstrtable.awk, libgpg-error/src/strerror-sym.c,
790 libgpg-error/src/strerror.c, libgpg-error/src/strsource-sym.c,
791 libgpg-error/src/strsource.c, libgpg-error/src/versioninfo.rc.in,
792 libgpg-error/src/w32-gettext.c, libgpg-error/src/w32-gettext.h,
793 libgpg-error/src/Makefile.in, libgpg-error/ABOUT-NLS,
794 libgpg-error/AUTHORS, libgpg-error/COPYING, libgpg-error/COPYING.LIB,
795 libgpg-error/ChangeLog, libgpg-error/INSTALL, libgpg-error/Makefile.am,
796 libgpg-error/NEWS, libgpg-error/README, libgpg-error/THANKS,
797 libgpg-error/VERSION, libgpg-error/autogen.sh, libgpg-error/compile,
798 libgpg-error/config.guess, libgpg-error/config.rpath,
799 libgpg-error/config.sub, libgpg-error/configure.ac, libgpg-error/depcomp,
800 libgpg-error/install-sh, libgpg-error/libgpg-error.spec,
801 libgpg-error/libgpg-error.spec.in, libgpg-error/ltmain.sh,
802 libgpg-error/missing, libgpg-error/mkinstalldirs,
803 libgpg-error/aclocal.m4, libgpg-error/configure,
804 libgpg-error/config.h.in, libgpg-error/Makefile.in: Remove.
805
806 Remove libgcrypt.
807 * libgcrypt/tests/ChangeLog, libgcrypt/tests/Makefile.am,
808 libgcrypt/tests/ac-data.c, libgcrypt/tests/ac-schemes.c,
809 libgcrypt/tests/ac.c, libgcrypt/tests/basic.c,
810 libgcrypt/tests/benchmark.c, libgcrypt/tests/hmac.c,
811 libgcrypt/tests/keygen.c, libgcrypt/tests/keygrip.c,
812 libgcrypt/tests/mpitests.c, libgcrypt/tests/pkbench.c,
813 libgcrypt/tests/prime.c, libgcrypt/tests/pubkey.c,
814 libgcrypt/tests/random.c, libgcrypt/tests/register.c,
815 libgcrypt/tests/t-mpi-bit.c, libgcrypt/tests/testapi.c,
816 libgcrypt/tests/tsexp.c, libgcrypt/tests/version.c,
817 libgcrypt/tests/Makefile.in, libgcrypt/src/ChangeLog
818 libgcrypt/src/Makefile.am, libgcrypt/src/Manifest, libgcrypt/src/ath.c,
819 libgcrypt/src/ath.h, libgcrypt/src/cipher.h, libgcrypt/src/dumpsexp.c,
820 libgcrypt/src/g10lib.h, libgcrypt/src/gcrypt-module.h,
821 libgcrypt/src/gcrypt.h, libgcrypt/src/gcrypt.h.in,
822 libgcrypt/src/gcryptrnd.c, libgcrypt/src/getrandom.c,
823 libgcrypt/src/global.c, libgcrypt/src/hwfeatures.c,
824 libgcrypt/src/libgcrypt-config.in, libgcrypt/src/libgcrypt.def,
825 libgcrypt/src/libgcrypt.m4, libgcrypt/src/libgcrypt.vers,
826 libgcrypt/src/misc.c, libgcrypt/src/missing-string.c,
827 libgcrypt/src/module.c, libgcrypt/src/mpi.h, libgcrypt/src/secmem.h,
828 libgcrypt/src/sexp.c, libgcrypt/src/stdmem.c, libgcrypt/src/stdmem.h,
829 libgcrypt/src/types.h, libgcrypt/src/versioninfo.rc.in,
830 libgcrypt/src/visibility.c, libgcrypt/src/visibility.h,
831 libgcrypt/src/Makefile.in, libgcrypt/src/secmem.c,
832 libgcrypt/m4/ChangeLog, libgcrypt/m4/Makefile.am,
833 libgcrypt/m4/libtool.m4, libgcrypt/m4/noexecstack.m4,
834 libgcrypt/m4/onceonly.m4, libgcrypt/m4/socklen.m4,
835 libgcrypt/m4/sys_socket_h.m4, libgcrypt/m4/Makefile.in,
836 libgcrypt/doc/ChangeLog, libgcrypt/doc/HACKING,
837 libgcrypt/doc/Makefile.am, libgcrypt/doc/README.apichanges,
838 libgcrypt/doc/gcrypt.texi, libgcrypt/doc/gpl.texi,
839 libgcrypt/doc/lgpl.texi, libgcrypt/doc/mdate-sh,
840 libgcrypt/doc/texinfo.tex, libgcrypt/doc/stamp-vti,
841 libgcrypt/doc/version.texi, libgcrypt/doc/gcrypt.info,
842 libgcrypt/doc/Makefile.in, libgcrypt/cipher/ChangeLog,
843 libgcrypt/cipher/Makefile.am, libgcrypt/cipher/Manifest,
844 libgcrypt/cipher/ac.c, libgcrypt/cipher/arcfour.c,
845 libgcrypt/cipher/bithelp.h, libgcrypt/cipher/blowfish.c,
846 libgcrypt/cipher/camellia-glue.c, libgcrypt/cipher/camellia.c,
847 libgcrypt/cipher/camellia.h, libgcrypt/cipher/cast5.c,
848 libgcrypt/cipher/cipher.c, libgcrypt/cipher/crc.c,
849 libgcrypt/cipher/des.c, libgcrypt/cipher/dsa.c, libgcrypt/cipher/ecc.c,
850 libgcrypt/cipher/elgamal.c, libgcrypt/cipher/md.c,
851 libgcrypt/cipher/md4.c, libgcrypt/cipher/md5.c,
852 libgcrypt/cipher/primegen.c, libgcrypt/cipher/pubkey.c,
853 libgcrypt/cipher/rand-internal.h, libgcrypt/cipher/random-daemon.c,
854 libgcrypt/cipher/random.c, libgcrypt/cipher/random.h,
855 libgcrypt/cipher/rfc2268.c, libgcrypt/cipher/rijndael-tables.h,
856 libgcrypt/cipher/rijndael.c, libgcrypt/cipher/rmd.h,
857 libgcrypt/cipher/rmd160.c, libgcrypt/cipher/rndegd.c,
858 libgcrypt/cipher/rndhw.c, libgcrypt/cipher/rndlinux.c,
859 libgcrypt/cipher/rndunix.c, libgcrypt/cipher/rndw32.c,
860 libgcrypt/cipher/rsa.c, libgcrypt/cipher/seed.c,
861 libgcrypt/cipher/serpent.c, libgcrypt/cipher/sha1.c,
862 libgcrypt/cipher/sha256.c, libgcrypt/cipher/sha512.c,
863 libgcrypt/cipher/tiger.c, libgcrypt/cipher/twofish.c,
864 libgcrypt/cipher/whirlpool.c, libgcrypt/cipher/Makefile.in,
865 libgcrypt/AUTHORS, libgcrypt/BUGS, libgcrypt/COPYING,
866 libgcrypt/COPYING.LIB, libgcrypt/ChangeLog, libgcrypt/INSTALL,
867 libgcrypt/Makefile.am, libgcrypt/NEWS, libgcrypt/README,
868 libgcrypt/README.SVN, libgcrypt/THANKS, libgcrypt/TODO, libgcrypt/VERSION,
869 libgcrypt/acinclude.m4, libgcrypt/autogen.sh, libgcrypt/compile,
870 libgcrypt/config.guess, libgcrypt/config.sub, libgcrypt/configure.ac,
871 libgcrypt/depcomp, libgcrypt/install-sh, libgcrypt/ltmain.sh,
872 libgcrypt/missing, libgcrypt/mkinstalldirs, , libgcrypt/aclocal.m4,
873 libgcrypt/configure, libgcrypt/config.h.in, libgcrypt/Makefile.in,
874 libgcrypt/mpi/ChangeLog, libgcrypt/mpi/Makefile.am,
875 libgcrypt/mpi/Manifest, libgcrypt/mpi/config.links, libgcrypt/mpi/ec.c,
876 libgcrypt/mpi/longlong.h, libgcrypt/mpi/mpi-add.c,
877 libgcrypt/mpi/mpi-bit.c, libgcrypt/mpi/mpi-cmp.c,
878 libgcrypt/mpi/mpi-div.c, libgcrypt/mpi/mpi-gcd.c,
879 libgcrypt/mpi/mpi-inline.c, libgcrypt/mpi/mpi-inline.h,
880 libgcrypt/mpi/mpi-internal.h, libgcrypt/mpi/mpi-inv.c,
881 libgcrypt/mpi/mpi-mod.c, libgcrypt/mpi/mpi-mpow.c,
882 libgcrypt/mpi/mpi-mul.c, libgcrypt/mpi/mpi-pow.c,
883 libgcrypt/mpi/mpi-scan.c, libgcrypt/mpi/mpicoder.c,
884 libgcrypt/mpi/mpih-div.c, libgcrypt/mpi/mpih-mul.c,
885 libgcrypt/mpi/mpiutil.c, libgcrypt/mpi/Makefile.in,
886 libgcrypt/mpi/alpha/README, libgcrypt/mpi/alpha/distfiles,
887 libgcrypt/mpi/alpha/mpih-add1.S, libgcrypt/mpi/alpha/mpih-lshift.S,
888 libgcrypt/mpi/alpha/mpih-mul1.S, libgcrypt/mpi/alpha/mpih-mul2.S,
889 libgcrypt/mpi/alpha/mpih-mul3.S, libgcrypt/mpi/alpha/mpih-rshift.S,
890 libgcrypt/mpi/alpha/mpih-sub1.S, libgcrypt/mpi/alpha/udiv-qrnnd.S,
891 libgcrypt/mpi/amd64/distfiles, libgcrypt/mpi/amd64/mpih-add1.S,
892 libgcrypt/mpi/amd64/mpih-lshift.S, libgcrypt/mpi/amd64/mpih-mul1.S,
893 libgcrypt/mpi/amd64/mpih-mul2.S, libgcrypt/mpi/amd64/mpih-mul3.S,
894 libgcrypt/mpi/amd64/mpih-rshift.S, libgcrypt/mpi/amd64/mpih-sub1.S,
895 libgcrypt/mpi/generic/Manifest, libgcrypt/mpi/generic/distfiles,
896 libgcrypt/mpi/generic/mpi-asm-defs.h, libgcrypt/mpi/generic/mpih-add1.c,
897 libgcrypt/mpi/generic/mpih-lshift.c, libgcrypt/mpi/generic/mpih-mul1.c,
898 libgcrypt/mpi/generic/mpih-mul2.c, libgcrypt/mpi/generic/mpih-mul3.c,
899 libgcrypt/mpi/generic/mpih-rshift.c, libgcrypt/mpi/generic/mpih-sub1.c,
900 libgcrypt/mpi/generic/udiv-w-sdiv.c, libgcrypt/mpi/hppa/README,
901 libgcrypt/mpi/hppa/distfiles, libgcrypt/mpi/hppa/mpih-add1.S,
902 libgcrypt/mpi/hppa/mpih-lshift.S, libgcrypt/mpi/hppa/mpih-rshift.S,
903 libgcrypt/mpi/hppa/mpih-sub1.S, libgcrypt/mpi/hppa/udiv-qrnnd.S,
904 libgcrypt/mpi/hppa1.1/distfiles, libgcrypt/mpi/hppa1.1/mpih-mul1.S,
905 libgcrypt/mpi/hppa1.1/mpih-mul2.S, libgcrypt/mpi/hppa1.1/mpih-mul3.S,
906 libgcrypt/mpi/hppa1.1/udiv-qrnnd.S, libgcrypt/mpi/i386/Manifest,
907 libgcrypt/mpi/i386/distfiles, libgcrypt/mpi/i386/mpih-add1.S,
908 libgcrypt/mpi/i386/mpih-lshift.S, libgcrypt/mpi/i386/mpih-mul1.S,
909 libgcrypt/mpi/i386/mpih-mul2.S, libgcrypt/mpi/i386/mpih-mul3.S,
910 libgcrypt/mpi/i386/mpih-rshift.S, libgcrypt/mpi/i386/mpih-sub1.S,
911 libgcrypt/mpi/i386/syntax.h, libgcrypt/mpi/i586/Manifest,
912 libgcrypt/mpi/i586/README, libgcrypt/mpi/i586/distfiles,
913 libgcrypt/mpi/i586/mpih-add1.S, libgcrypt/mpi/i586/mpih-lshift.S,
914 libgcrypt/mpi/i586/mpih-mul1.S, libgcrypt/mpi/i586/mpih-mul2.S,
915 libgcrypt/mpi/i586/mpih-mul3.S, libgcrypt/mpi/i586/mpih-rshift.S,
916 libgcrypt/mpi/i586/mpih-sub1.S, libgcrypt/mpi/m68k/Manifest,
917 libgcrypt/mpi/m68k/distfiles, libgcrypt/mpi/m68k/mpih-add1.S,
918 libgcrypt/mpi/m68k/mpih-lshift.S, libgcrypt/mpi/m68k/mpih-rshift.S,
919 libgcrypt/mpi/m68k/mpih-sub1.S, libgcrypt/mpi/m68k/syntax.h,
920 libgcrypt/mpi/mips3/Manifest, libgcrypt/mpi/mips3/README,
921 libgcrypt/mpi/mips3/distfiles, libgcrypt/mpi/mips3/mpi-asm-defs.h,
922 libgcrypt/mpi/mips3/mpih-add1.S, libgcrypt/mpi/mips3/mpih-lshift.S,
923 libgcrypt/mpi/mips3/mpih-mul1.S, libgcrypt/mpi/mips3/mpih-mul2.S,
924 libgcrypt/mpi/mips3/mpih-mul3.S, libgcrypt/mpi/mips3/mpih-rshift.S,
925 libgcrypt/mpi/mips3/mpih-sub1.S, libgcrypt/mpi/pa7100/Manifest,
926 libgcrypt/mpi/pa7100/distfiles, libgcrypt/mpi/pa7100/mpih-lshift.S,
927 libgcrypt/mpi/pa7100/mpih-rshift.S, libgcrypt/mpi/pentium4/README,
928 libgcrypt/mpi/pentium4/distfiles, libgcrypt/mpi/power/Manifest,
929 libgcrypt/mpi/power/distfiles, libgcrypt/mpi/power/mpih-add1.S,
930 libgcrypt/mpi/power/mpih-lshift.S, libgcrypt/mpi/power/mpih-mul1.S,
931 libgcrypt/mpi/power/mpih-mul2.S, libgcrypt/mpi/power/mpih-mul3.S,
932 libgcrypt/mpi/power/mpih-rshift.S, libgcrypt/mpi/power/mpih-sub1.S,
933 libgcrypt/mpi/powerpc32/Manifest, libgcrypt/mpi/powerpc32/distfiles,
934 libgcrypt/mpi/powerpc32/mpih-add1.S,
935 libgcrypt/mpi/powerpc32/mpih-lshift.S,
936 libgcrypt/mpi/powerpc32/mpih-mul1.S,
937 libgcrypt/mpi/powerpc32/mpih-mul2.S,
938 libgcrypt/mpi/powerpc32/mpih-mul3.S,
939 libgcrypt/mpi/powerpc32/mpih-rshift.S,
940 libgcrypt/mpi/powerpc32/mpih-sub1.S, libgcrypt/mpi/powerpc32/syntax.h,
941 libgcrypt/mpi/powerpc64/distfiles, libgcrypt/mpi/sparc32/Manifest,
942 libgcrypt/mpi/sparc32/distfiles, libgcrypt/mpi/sparc32/mpih-add1.S,
943 libgcrypt/mpi/sparc32/mpih-lshift.S,
944 libgcrypt/mpi/sparc32/mpih-rshift.S, libgcrypt/mpi/sparc32/udiv.S,
945 libgcrypt/mpi/sparc32v8/Manifest, libgcrypt/mpi/sparc32v8/distfiles,
946 libgcrypt/mpi/sparc32v8/mpih-mul1.S,
947 libgcrypt/mpi/sparc32v8/mpih-mul2.S,
948 libgcrypt/mpi/sparc32v8/mpih-mul3.S, libgcrypt/mpi/supersparc/Manifest,
949 libgcrypt/mpi/supersparc/distfiles,
950 libgcrypt/mpi/supersparc/udiv.S, libgcrypt/mpi/m68k/mc68020/distfiles
951 libgcrypt/mpi/m68k/mc68020/Manifest,
952 libgcrypt/mpi/m68k/mc68020/mpih-mul1.S,
953 libgcrypt/mpi/m68k/mc68020/mpih-mul2.S,
954 libgcrypt/mpi/m68k/mc68020/mpih-mul3.S,
955 libgcrypt/mpi/pentium4/mmx/distfiles,
956 libgcrypt/mpi/pentium4/mmx/mpih-lshift.S,
957 libgcrypt/mpi/pentium4/mmx/mpih-rshift.S,
958 libgcrypt/mpi/pentium4/sse2/distfiles,
959 libgcrypt/mpi/pentium4/sse2/mpih-add1.S,
960 libgcrypt/mpi/pentium4/sse2/mpih-mul1.S,
961 libgcrypt/mpi/pentium4/sse2/mpih-mul2.S,
962 libgcrypt/mpi/pentium4/sse2/mpih-mul3.S,
963 libgcrypt/mpi/pentium4/sse2/mpih-sub1.S: Remove.
964
d9129990
CV
9652010-03-17 Corinna Vinschen <corinna@vinschen.de>
966
967 * autoload.cc (Auto): Create autoload code in an executable section
968 called .autoload_text to avoid problems with DEP.
969
a3cc7986
CF
9702010-03-14 Christopher Faylor <me+cygwin@cgf.cx>
971
0a4e9289 972 * Makefile.am: Add a setup-src target.
a3cc7986 973
671140f9
CW
9742010-03-14 Charles Wilson <cygwin@cwilson.fastmail.fm>
975
976 Support xz and lzma decompression via liblzma
977 * Makefile.am: Add -DLZMA_API_STATIC to AM_CPPFLAGS,
978 -lzma to setup_LDADD, and -static-libtool-libs to
979 setup_LDFLAGS. Update setup_SOURCES.
980 * compress.cc: Update includes.
981 (compress::decompress): Use compress_xz rather than
982 compress_lzma; compress_xz supports both xz and lzma
983 decompression.
984 * compress_xz.h: New.
985 * compress_xz.cc: New.
986 * compress_lzma.h: Removed.
987 * compress_lzma.cc: Removed.
988 * lzma-sdk/LzmaDec.c: Removed.
989 * lzma-sdk/LzmaDec.h: Removed.
990 * lzma-sdk/Types.h: Removed.
991
f1c131f2
CV
9922010-03-13 DJ Delorie <dj@redhat.com>
993
994 * nio-ftp.c (read): Read RETR status code on EOF to avoid
995 deadlock with PASV.
996
08267187
CV
9972010-03-01 Corinna Vinschen <corinna@vinschen.de>
998
999 * filemanip.cc (mklongpath): Skip "." and ".." path components to
1000 avoid error messages.
1001
26c8444e
CV
10022010-02-15 Corinna Vinschen <corinna@vinschen.de>
1003
1004 * filemanip.cc (mklongpath): Simplify backslash folding.
1005
6e2c72d0
CV
10062010-02-15 Corinna Vinschen <corinna@vinschen.de>
1007
1008 * filemanip.cc (transform_chars): Drop function.
1009 (mklongpath): Call mbrtowc in a loop rather than just mbstowcs.
1010 Transform characters on the fly. Fold multiple backslashes into one.
1011 Drop trailing backslash.
1012
7a4e611a
DK
10132010-02-15 Dave Korn <dave.korn.cygwin@gmail.com>
1014
1015 * choose.cc (ChooserPage::PlaceDialog): Only skip resizing window
1016 in fully-unattended mode, not chooser-only mode.
1017 (ChooserPage::OnUnattended): Return appropriate status to run page
1018 or not according to kind of unattended mode.
1019 * choose.h (ChooserPage::OnUnattended): Remove inline implementation
1020 and retain prototype only.
1021 * main.cc (PackageManagerOption): New boolean option.
1022 (main): Take it into account when setting unattended_mode.
1023 * proppage.cc (PropertyPage::DialogProc): Use new enum type when
1024 setting unattended_mode.
1025 * state.cc (unattended_mode): Change from bool to enum attend_mode.
1026 * state.h (enum attend_mode): Declare new enum type.
1027 (unattended_mode): Update extern declaration to use it.
1028
2801c09c
CV
10292010-02-04 Corinna Vinschen <corinna@vinschen.de>
1030
1031 * win32.cc (NTSecurity::GetPosixPerms): Return NULL security descriptor
1032 if is_legacy is set.
1033 (NTSecurity::SetPosixPerms): Remove.
1034 * win32.h (NTSecurity::GetPosixPerms): Remove declaration.
1035
d2a5fdfb
CV
10362010-02-02 Corinna Vinschen <corinna@vinschen.de>
1037
1038 * desktop.cc (make_link): Use 0 default permissions when creating files
1039 and directories.
1040 * download.cc (download_one): Ditto.
1041 * ini.cc (do_remote_ini): Ditto.
1042 * localdir.cc (offer_to_create): Ditto.
1043 * filemanip.cc (nt_wfopen): Use Windows default permissions if perms
1044 is set to 0.
1045 * mkdir.cc (mkdir_p): Ditto if mode is set to 0.
1046
b67a5ea0
CF
10472010-01-29 Christopher Faylor <me+cygwin@cgf.cx>
1048
1049 * mount.cc (read_mounts_9x): Preserve old way of doing things when
1050 is_legacy.
1051
558484cc
CF
10522010-01-28 Christopher Faylor <me+cygwin@cgf.cx>
1053
1054 * desktop.cc (make_link): Preserve old way of doing things when
1055 is_legacy.
1056 (make_cygwin_bat): Ditto.
1057 (save_icon): Ditto.
1058 * mount.cc (read_mounts): Ditto.
1059 (set_root_dir): Ditto.
1060 * root.cc (load_dialog): Ditto.
1061 (save_dialog): Ditto.
1062 * install.cc (Installer::installOne): Don't install anything if there
1063 is no canonical file associated with source.
1064 (do_install_thread): Set up old-style registry entries if is_legacy
1065 rather than just keying on whether this is Windows NT.
1066 * io_stream_file.cc (io_stream_file::exists): Redefine "exists" to mean
1067 "it's a file".
1068
d0c6ddb9
CF
10692010-01-16 Christopher Faylor <me+cygwin@cgf.cx>
1070
1071 * archive_tar.c (archive_tar_file::read): Always set read_something
1072 even for zero-length files.
1073
bb000e11
CF
10742010-01-16 Christopher Faylor <me+cygwin@cgf.cx>
1075
1076 * archive_tar.h (archive_tar_file::read_something): New member.
1077 * archive_tar_file.cc (archive_tar_file::archive_tar_file): Don't reset
1078 state unless we've actually read something.
1079 (archive_tar_file::read): Set read_something variable here to indicate
1080 that we've read something from the tar file.
1081
7c907c13
CF
10822010-01-13 Christopher Faylor <me+cygwin@cgf.cx>
1083
1084 * localdir.cc (LocalDirPage::OnNext): Strip trailing slashes.
1085
89216328
CF
10862009-12-27 Christopher Faylor <me+cygwin@cgf.cx>
1087
1088 * main.cc (dyn_AttachConsole): Make static.
1089 (dyn_GetLongPathName): New variable.
1090 (set_dynaddr): New function.
1091 (set_cout): Don't set dyn_AttachConsole here.
1092 (set_legacy): Don't attempt to call function which does not exist in
1093 older versions of NT.
1094 (main): Call set_dynaddr to set dynamic load addresses.
1095
4ea94dbb
CF
10962009-12-22 Christopher Faylor <me+cygwin@cgf.cx>
1097
1098 * ini.h: Use is_legacy to control setup.ini names.
1099 * main.cc (set_legacy): New function.
1100 (main): Call set_legacy with program name to determine if this is
1101 supposed to be an installation of the legacy version of cygwin. Issue
1102 a warning on attempt to install legacy on Windows NT class system.
1103
84b04515
CF
11042009-12-22 Christopher Faylor <me+cygwin@cgf.cx>
1105
1106 * package_message (packagemessage::display): Avoid displaying a message
1107 when in unattended mode.
1108
4d10ec8c
CV
11092009-12-22 Corinna Vinschen <corinna@vinschen.de>
1110
1111 * win32.h (isdirsep): Define to replace local isslash definitions.
1112 * UserSettings.cc (UserSettings::open_settings): Remove isslash.
1113 Use isdirsep instead of isslash.
1114 * filemanip.cc (mklongpath): Ditto.
1115 * root.cc (directory_is_rootdir): Ditto.
1116 * localdir.cc (LocalDirSetting::save): Avoid consecutive backslashes
1117 in setup log file paths.
1118 * main.cc (main): Ditto.
1119
e305f965
CF
11202009-12-21 Christopher Faylor <me+cygwin@cgf.cx>
1121
1122 * choose.cc (ChooserPage::PlaceDialog): Put *correct* size in
1123 WINDOWPLACEMENT length field.
1124
26922cd2
CV
11252009-12-18 Corinna Vinschen <corinna@vinschen.de>
1126
1127 Throughout, revert prototypes and methods set_mtime_and_mode to
1128 set_mtime and only care for the file timestamp.
1129
1130 Throughout, accommodate additional mode_t parameter in call to
1131 io_stream::open.
1132
1133 * IOStreamProvider.h (IOStreamProvider::open): Add mode_t parameter.
1134 * archive.cc (archive::extract_file): Reorder creation of in and tmp
1135 to get the file mode from the tar archive earlier. Call io_stream::open
1136 with additional mode from tar archive. Accommodate reversion to
1137 set_mtime.
1138 * filemanip.cc (nt_wfopen): Remove retry loop. Instead initialize
1139 OBJECT_ATTRIBUTES with matching POSIX perms according to incoming
1140 perms to create correct ACL on file creation. Remove subsequent call
1141 to nt_sec.SetPosixPerms.
1142 * io_stream.cc (io_stream::open): Take additional mode_t parameter
1143 and connect through to IOStreamProvider's open.
1144 * io_stream.h (io_stream::open): Add mode_t parameter.
1145 * io_stream_cygfile.cc (CygFileProvider::open): Ditto.
1146 (io_stream_cygfile::io_stream_cygfile): Ditto. Call nt_wfopen with
1147 incoming mode_t parameter. Make sure .exe and .dll files always
1148 have execute permissions set.
1149 (io_stream_cygfile::set_mtime): Remove retry loop and open file with
1150 just GENERIC_WRITE access.
1151 * io_stream_cygfile.h (io_stream_cygfile::io_stream_cygfile): Add mode_t
1152 parameter.
1153 * io_stream_file.cc (FileProvider::open): Ditto.
1154 (io_stream_file::io_stream_file): Ditto. Call nt_wfopen with incoming
1155 mode_t parameter.
1156 * io_stream_file.h (io_stream_file::io_stream_file): Add mode_t
1157 parameter.
1158 * io_stream_memory.h (class io_stream_memory): Remove mode member.
1159 Just return 0 from get_mode.
1160 * mkdir.cc (mkdir_p): Remove retry loop. Instead initialize
1161 OBJECT_ATTRIBUTES with matching POSIX perms according to incoming
1162 perms to create correct ACL on file creation. Remove subsequent call
1163 to nt_sec.SetPosixPerms.
1164 * mklink2.cc (mkcygsymlink_nt): Remove retry loop. Instead initialize
1165 SECURITY_ATTRIBUTES with matching POSIX perms to create correct ACL on
1166 file creation.
1167 * win32.cc (NTSecurity::GetPosixPerms): New function to generate
1168 POSIX ACL. Default to current owner and current primary group for
1169 owner/group permissions.
1170 (NTSecurity::SetPosixPerms): Let GetPosixPerms create the DACL.
1171 (NTSecurity::setAdminGroup): Set groupSID to admins SID if successful.
1172 (NTSecurity::setDefaultSecurity): Store user SID in ownerSID member.
1173 Default groupSID to original primary group.
1174 * win32.h (struct acl_t): Define here.
1175 (class NTSecurity): Rename ownerSID and groupSID to cr_ownerSID and
1176 cr_groupSID. Change throughout. Add members ownerSID and groupSID.
1177 Declare new method GetPosixPerms.
1178
7a332fb8
CV
11792009-12-17 Corinna Vinschen <corinna@vinschen.de>
1180
1181 * filemanip.cc (nt_wfopen): Only call nt_sec.SetPosixPerms if we have
1182 WRITE_DAC access.
1183 * mkdir.cc (mkdir_p): Ditto.
1184
21aa9a8b
CV
11852009-12-17 Corinna Vinschen <corinna@vinschen.de>
1186
1187 * filemanip.cc (nt_wfopen): Fix requested access rights. Retry
1188 without WRITE_DAC access on access denied. Add comment.
1189 * io_stream_cygfile.cc (io_stream_cygfile::set_mtime_and_mode): Ditto.
1190 * mkdir.cc (mkdir_p): Ditto.
1191 * mklink2.cc (mkcygsymlink_nt): Ditto.
1192
c459d893
CV
11932009-12-17 Corinna Vinschen <corinna@vinschen.de>
1194
1195 * localdir.cc (LocalDirSetting::save): Call mkdir_p with isadir set
1196 since /var/log is a dir.
1197
32049a60
CV
11982009-12-16 Corinna Vinschen <corinna@vinschen.de>
1199
1200 * UserSettings.cc (UserSettings::open_settings): Never add more than
1201 one slash.
1202 * filemanip.cc (tfx_chars): Align to Cygwin's transformation table.
1203 * localdir.cc (LocalDirSetting::save): Call mkdir_p with DOS path.
1204
ab9a95fc
CF
12052009-12-16 Christopher Faylor <me+cygwin@cgf.cx>
1206
1207 * package_message.h: New file.
1208
f38044ff
CF
12092009-12-13 Christopher Faylor <me+cygwin@cgf.cx>
1210
1211 * IniDBBuilder.h (buildMessage): Define for base class.
1212 * IniDBBuilderPackage.cc (IniDBBuilderPackage::buildMessage): Define.
1213 * IniDBBuilderPackage.h (IniDBBuilderPackage::buildMessage): Declare.
1214 * PickPackageLine.cc: Pass pointer to package to "pick" throughout,
1215 where appropriate.
1216 * PickView.cc: Ditto.
1217 * install.cc: Ditto.
1218 * package_meta.cc: Ditto.
1219 * prereq.cc: Ditto.
1220 * package_version.cc: Ditto.
1221 (packageversion::pick): Add pkg pointer as second argument. Display
1222 message where appropriate.
1223 * package_version.h (packageversion::pick): Add pkg pointer as second
1224 argument.
1225 * package_meta.h (packagemeta::mesage): Define.
1226 (packagemeta::set_message): Define.
1227 * inilex.ll: Properly return MESSAGE token.
1228 * iniparse.yy: Handle message: keyword.
1229
cc7a5bf5
DK
12302009-12-08 Dave Korn <dave.korn.cygwin@gmail.com>
1231
1232 * localdir.cc (offer_to_create): New function.
1233 (browse_cb): Handle selection changed and validate failed
1234 callbacks, and call offer_to_create where appropriate.
1235 (browse): Set new dialog style flags in browser info.
1236 (LocalDirPage::OnNext): Replace call to mkdir_p with offer to
1237 create or error message dialog display, allow proceeding to
1238 chooser even if local dir does not exist in unattend mode or
1239 if user insists, and fix small memory leak.
1240
1241 * res.rc (IDS_MAYBE_MKDIR, IDS_CANT_MKDIR, IDS_NO_CWD): Define new
1242 string resources.
1243 * resource.h (IDS_MAYBE_MKDIR, IDS_CANT_MKDIR, IDS_NO_CWD): Define
1244 corresponding resource ID numbers.
1245
a5405502
CV
12462009-12-03 Corinna Vinschen <corinna@vinschen.de>
1247
1248 * main.cc (WinMain): Disable running on Windows 9x. Show message box
1249 instead and exit.
1250
98756d2f
DK
12512009-12-03 Dave Korn <dave.korn.cygwin@gmail.com>
1252
1253 (ChooserPage::createListview): When nothing is found in the "All"
1254 category, pass an empty static dummy category object to the PickView
1255 constructor, instead of trying to dereference not-found iterator.
1256
f72d5840
CV
12572009-11-23 Corinna Vinschen <corinna@vinschen.de>
1258
1259 * io_stream_cygfile.cc (io_stream_cygfile::get_size): Don't try to
1260 close invalid handle.
1261 * io_stream_file.cc (io_stream_file::get_size): Ditto
1262
e1751ab2
DK
12632009-11-22 Dave Korn <dave.korn.cygwin@gmail.com>
1264
1265 * threebar.cc (ThreeBarProgressPage::OnMessageApp): Don't loop forever
1266 retrying ini file download/parse if it errors in unattended mode.
1267
513f7781
DK
12682009-11-22 Dave Korn <dave.korn.cygwin@gmail.com>
1269
1270 * package_meta.cc (CategoryOption): New StringOption for '-C'.
1271 (parseNames): New helper subroutine abstracts string parsing from ...
1272 (packagemeta::isManuallyWanted): Use it, and check for category names
1273 from CategoryOption as well as individual package names.
1274 * package_db.cc (packagedb::fillMissingCategory): Don't check for
1275 manually-wanted packages until after initialising all the categories.
1276
2b94fe1e
DK
12772009-11-04 Dave Korn <dave.korn.cygwin@gmail.com>
1278
1279 * localdir.cc (LocalDirSetting::LocalDirSetting): Restore -l option.
1280
da434346
DK
12812009-11-04 Dave Korn <dave.korn.cygwin@gmail.com>
1282
1283 * site.cc: Add #include of BoolOption header from libgetopt.
1284 (OnlySiteOption): New BoolOption for command-line -O option.
1285 (get_site_list): Respect BoolOption by not downloading mirror
1286 list, nor using nor updating cached mirrors.
1287
c7c7a4e0
DK
12882009-11-04 Dave Korn <dave.korn.cygwin@gmail.com>
1289
1290 * download.cc (do_download_thread): Only retry an incomplete download
1291 a limited number of times in unattended mode.
1292
9e11837b
DK
12932009-11-04 Dave Korn <dave.korn.cygwin@gmail.com>
1294
1295 * main.cc (main_display): Use apartment-, not multi- threading model
1296 when initialiseing COM.
1297
64cf790e
CV
12982009-11-04 Corinna Vinschen <corinna@vinschen.de>
1299
1300 * localdir.cc (browse): Make title text depend on what we do.
1301 (LocalDirPage::OnNext): If we plan to download, try to create directory
1302 before cd'ing into it.
1303
89cc2408
CV
13042009-11-03 Corinna Vinschen <corinna@vinschen.de>
1305
1306 * mkdir.cc: Include sys/stat.h unconditionally.
1307 (mkdir_p): Add S_IFDIR flag in call to nt_sec.SetPosixPerms.
1308 * win32.cc: Include sys/stat.h.
1309 (NTSecurity::SetPosixPerms): Add CREATOR OWNER, CREATOR GROUP, and
1310 Everyone inheritance-only entries when setting a directory DACL.
1311 (NTSecurity::initialiseWellKnownSIDs): Create SIDs for CREATOR OWNER and
1312 CREATOR GROUP.
1313 * win32.h (class NTSecurity): Add members ownerSID and groupSID.
1314
3e805913
CV
13152009-10-03 Andy Koppe <andy.koppe@gmail.com>
1316
1317 * main.cc (main): Make sure C runtime uses same codepage as GUI.
1318
0188fce5
CF
13192009-09-20 Christopher Faylor <me+cygwin@cgf.cx>
1320
1321 * main (set_cout): Really do attach to a console if stdout is "bad".
1322
8bc8a102
CF
13232009-09-18 Andy Koppe <andy.koppe@gmail.com>
1324
1325 * root.cc (string orig_root_dir): New variable.
1326 (check_if_enable_next): Show warning against installing Cygwin into
1327 disk root only if the root directory has actually been changed.
1328 * res.rc: Make the root dir warning a bit more meaningful, and refrain
1329 from using uppercase.
1330
13312009-09-18 Christopher Faylor <me+cygwin@cgf.cx>
1332
1333 * choose.cc (ChooserPage::OnBack): Revert to non-maximized when
1334 returning to mirror from package selection.
1335
ca09f44c
DK
13362009-09-18 Dave Korn <dave.korn.cygwin@gmail.com>
1337
1338 * site.cc (get_site_list): Use empty string if user settings
1339 return NULL pointer for cached mirrors list.
1340 (SiteSetting::getSavedSites): Do nothing if user settings return
1341 NULL pointer for last mirror URL.
1342
83ab685b
CF
13432009-08-21 Christopher Faylor <me+cygwin@cgf.cx>
1344
1345 * site.cc (SiteSetting::registerSavedSite): Fix comment.
1346
0cbac692
CF
13472009-07-03 Christopher Faylor <me+cygwin@cgf.cx>
1348
1349 * main.cc (set_cout): Don't reset stdout if we already have a stdout.
1350
7411af0f
CF
13512009-07-03 Christopher Faylor <me+cygwin@cgf.cx>
1352
1353 * choose.cc (ChooserPage::ChooserPage): Use more specific name for
1354 saving window settings.
1355 (ChooserPage::~ChooserPage): Ditto.
1356
0baffe9a
DK
13572009-07-01 Dave Korn <dave.korn.cygwin@gmail.com>
1358
1359 * PickView.h (PickView::total_delta_x): New int member.
1360 (PickView::set_header_column_order): Add prototype.
1361 * PickView.cc (PickView::set_header_column_order): New function,
1362 broken out from ...
1363 (PickView::set_headers): ... here. Call it.
1364 (PickView::init_headers): Apply total_delta_x to last_col width.
1365 (PickView::PickView): Initialise new total_delta_x member to zero.
1366 (PickView::WindowProc): Use set_header_column_order to find and
1367 adjust final column for both sets of headers.
1368
ca2b7505
CF
13692009-06-29 Christopher Faylor <me+cygwin@cgf.cx>
1370
1371 * SourceSetting.cc (SourceSetting::SourceSetting): Restore proper
1372 remembrane of last source setting.
1373 * choose.cc (ChooserPage::ChooserPage): Potentially retrieve dialog
1374 placement info.
1375 (ChooserPage::~ChooserPage): Save geometry settings if the user moved
1376 or resized the page.
1377 (ChooserPage::PlaceDialog): Rename from MaximizeDialog. Accommodate
1378 changed user placement settings.
1379 (ChooserPage::OnActivate): MaximizeDialog -> PlaceDialog.
1380 (ChooserPage::OnNext): Ditto.
1381 * choose.h (ChooserPage::~ChooserPage): Define.
1382 (ChooserPage::cmd_show): Delete.
1383 (ChooserPage::saved_geom): New field.
1384 (ChooserPage::window_placement): Ditto.
1385 (ChooserPage::pre_chooser_placement): Ditto.
1386 (ChooserPage::PlaceDialog): Rename from MaximizeDialog.
1387
7c863922
CF
13882009-06-28 Christopher Faylor <me+cygwin@cgf.cx>
1389
1390 * ConnectionSetting.cc (ConnectionSetting::ConnectionSetting): Remove
1391 old code which no longer makes sense when run from a constructor.
1392 * SourceSetting.cc (SourceSetting::SourceSetting): Ditto.
1393 * localdir.cc (LocalDirSetting::LocalDirSetting): Ditto. Fix typo
1394 which caused saved settings to be ignored.
1395
127febea
CF
13962009-06-28 Christopher Faylor <me+cygwin@cgf.cx>
1397
1398 * UserSettings.cc (UserSettings::UserSettings): settings.rc -> setup.rc.
1399
e36b0f1e
CV
14002009-06-28 Corinna Vinschen <corinna@vinschen.de>
1401
1402 * desktop.cc (DesktopSetupPage::OnInit): Drop CoInitialize call here.
1403 * main.cc (main_display): Use InitCommonControlsEx rather than
1404 InitCommonControls per MSDN. Call CoInitializeEx and create IShellLink
1405 instance here to workaround a problem on Windows 7. Release IShellLink
1406 instance and call CoUninitialize on exit.
1407 * mklink.cc (sl): Change to global variable. Drop call to
1408 CoCreateInstance here. Check if sl is valid before using it.
1409
f26f525f
CF
14102009-06-27 Christopher Faylor <me+cygwin@cgf.cx>
1411
1412 Preliminary option handling revamp.
1413 Throughout, change load/save methods to constructors/destructors which
1414 use new UserSettings methods. Do not inherit from UserSetting class.
1415 * KeysSetting.cc (ExtraKeysSetting *ExtraKeysSetting::global): Define.
1416 (ExtraKeysSetting::ExtraKeysSetting): Initialize some class members use
1417 new UserSettings methods.
1418 (ExtraKeysSetting::~ExtraKeysSetting): Use new UserSettings method.
1419 * Makefile.am (setup_SOURCES): Eliminate UserSetting.h and
1420 UserSetting.cc.
1421 * UserSettings.cc: Complete rewrite. Implements new UserSettings
1422 class methods.
1423 * UserSettings.h: Complete rewrite. Defines new UserSettings class
1424 methods.
1425 * crypto.cc (ExtraKeys): Delete.
1426 (add_key_from_sexpr): Use ExtraKeysSetting::instance rather than
1427 ExtraKeys.
1428 (verify_ini_file_sig): Ditto.
1429 * io_stream.h (io_stream): Define virtual << operators.
1430 * localdir.cc (localDir): Delete.
1431 * main.cc: Include headers which declar new dynamically invoked
1432 classes.
1433 (main_display): New function. Controls order of option setting and
1434 property page setup. Add new class invocations to force option setting
1435 initializtion.
1436 (main): Invoke new UserSettings class constructor to populate new
1437 settings class. Call main_display() to do most of the setup work.
1438 Call Settings.save () to save all settings.
1439 * net.cc (theSetting): Delete.
1440 * site.cc (SiteSetting::save): Record whether we've saved the
1441 information already.
1442 (get_site_list): Just use value returned from new UserSettings method
1443 rather than parsing a file.
1444 (SiteSetting::getSavedSites): Ditto.
1445 (write_cache_list): Use UserSettings operator to store mirror cache.
1446 (save_cache_file): Ditto.
1447 * source.cc (theSetting): Delete.
1448
1449 * win32.h: gcc-4 accommodation.
1450
9d0a3d8a
DK
14512009-06-26 Dave Korn <dave.korn.cygwin@gmail.com>
1452
1453 * res.rc (SETUP_STANDARD_DIALOG_W, SETUP_STANDARD_DIALOG_H,
1454 SETUP_SMALL_DIALOG_W, SETUP_SMALL_DIALOG_H): Add constant defines
1455 for dialog sizes.
1456 (SETUP_STANDARD_DIALOG_DIMS, SETUP_SMALL_DIALOG_DIMS): Add helper
1457 macros for (W,H) pairs of dimensions.
1458 (SETUP_HEADICON_X): New global constant define.
1459 (IDD_SOURCE, IDD_VIRUS, IDD_LOCAL, IDD_ROOT, IDD_SITE, IDD_NET,
1460 IDD_INSTATUS, IDD_PROXY_AUTH, IDD_NET_AUTH, IDD_DESKTOP,
1461 IDD_FTP_AUTH DIALOG, IDD_DROPPED): Use the above for dialog sizes,
1462 horizontal rules and icon positioning.
1463 (SETUP_KPCE_W): New define for radio-button size.
1464 (SETUP_VIEWCAP_W, SETUP_VIEWCAP_X, SETUP_VIEW_W, SETUP_VIEW_X,
1465 SETUP_EXP_X, SETUP_CURR_X, SETUP_PREV_X, SETUP_KEEP_X): Add defines
1466 for right-aligned controls.
1467 (SETUP_SEARCH_X, SETUP_SEARCH_W, SETUP_SEARCHTEXT_X,
1468 SETUP_SEARCHTEXT_W, SETUP_CLEAR_X, SETUP_CLEAR_W): Likewise defines
1469 for left-aligned controls.
1470 (IDD_CHOOSE): Use all the above, and reformat with whitespace
1471 between args for clarity.
1472
1789ef54
CV
14732009-06-26 Corinna Vinschen <corinna@vinschen.de>
1474
1475 * Makefile.am (setup_LDADD): Add -lshlwapi.
1476 * PickView.cc: Include shlwapi.h.
1477 (PickView::setViewMode): Compare package name with search string
1478 case-insensitive.
1479 (PickView::insert_category): Ditto.
1480
557b4e65
CV
14812009-06-26 Corinna Vinschen <corinna@vinschen.de>
1482
1483 * script.cc (init_run_script): Don't set $HOME to /tmp. It breaks
1484 mkpasswd -c.
1485
46cf12cd
CV
14862009-06-25 Corinna Vinschen <corinna@vinschen.de>
1487
1488 * script.cc (init_run_script): Reinstantiate accidentally removed
1489 setting of sh.
1490
b56d411d
CF
14912009-06-22 Christopher Faylor <me+cygwin@cgf.cx>
1492
1493 * script.cc (init_run_script): Revert to initializing cmd based on OS
1494 type.
1495
c14feb84
CV
14962009-06-22 Corinna Vinschen <corinna@vinschen.de>
1497
1498 * script.cc (Script::run): Start bash without -c option.
1499
00fa5f6c
CF
15002009-06-20 Christopher Faylor <me+cygwin@cgf.cx>
1501
1502 * threebar.cc (ThreeBarProgressPage::ins_dialog): Move variable to more
1503 appropriate class.
1504 (ThreeBarProgressPage::MaximizeDialog): Move function to more
1505 appropriate class.
1506 (ThreeBarProgressPage::OnMessageApp): Remove MaximizeDialog calls.
1507 * threebar.h: Remove maximize handling.
1508 * choose.cc (ChooserPage::ins_dialog): New variable.
1509 (ChooserPage::MaximizeDialog): New function.
1510 (ChooserPage::ChooserPage): Remove unneeded handling of nCmdShow.
1511 (ChooserPage::OnActivate): Maximize chooser page via MaximizeDialog.
1512 (ChooserPage::OnNext): Revert chooser page to normal before returning.
1513 * main.cc (main): Don't pass cmd_show to ChooserPage.
1514 * propsheet.cc (PropSheetProc): Accommodate change in class for
1515 SetHwndDialog.
1516
5a85457b
CF
15172009-06-20 Christopher Faylor <me+cygwin@cgf.cx>
1518
1519 * script.cc (shells): Delete.
1520 (cmd): Just assign to "cmd.exe" since we're always running on NT now.
1521 (sanitize_PATH ): New function.
1522 (init_run_script): Ensure that we're only called once. Strip
1523 environment of non-pertinent stuff. Call sanitize_PATH to remove
1524 non-standard stuff from the PATH. Set up a few standard environment
1525 variables.
1526
b0bb51b4
CV
15272009-06-16 Corinna Vinschen <corinna@vinschen.de>
1528
1529 * mount.cc (create_install_root): Don't load mount table again.
1530 (read_mounts_nt): Don't break loop, rather continue when not being
1531 able to open "Cygwin" registry key.
1532
ed1f007a
CF
15332009-06-03 Ralph Hempel <rhempel@bmts.com>
1534
1535 * source.cc: Add support for both -D and -L on the command line.
1536
7cb7c06e
CV
15372009-06-03 Corinna Vinschen <corinna@vinschen.de>
1538
1539 * filemanip.cc (unlink): Rename from DeleteFileW. Take additional
1540 parameter to indicate file type to unlink. Use in flags given to
1541 NtCreateFile.
1542 (DeleteFileW): Just call unlink from here with FILE_NON_DIRECTORY_FILE
1543 flag.
1544 (RemoveDirectoryW): Ditto with FILE_DIRECTORY_FILE flag.
1545
1eb4caec
CW
15462009-05-30 Charles Wilson <cygwin@cwilson.fastmail.fm>
1547
1548 * script.cc (Script::run): Really start bash with --norc
1549 --noprofile options.
1550
b7940eb5
CV
15512009-05-13 Corinna Vinschen <corinna@vinschen.de>
1552
1553 * script.cc (Script::run): Start bash with --norc --noprofile options.
1554
94f52d39
CV
15552009-05-13 Corinna Vinschen <corinna@vinschen.de>
1556
1557 * filemanip.cc (struct _FILE_RENAME_INFORMATION): Remove definition.
1558 * io_stream_cygfile.cc (io_stream_cygfile::io_stream_cygfile): Set
1559 default permission for .exe files to 0755.
1560 (io_stream_cygfile::mklink): Try to create real hardlink first. Add
1561 comment.
1562 * mklink2.cc (mkcyghardlink): New function to create real hardlink.
1563 * mklink2.h (mkcyghardlink): Declare.
1564 * mount.cc (from_fstab_line): Set got_usr_bin and got_usr_lib flags
1565 if /usr/bin and /usr/lib mount points exist in /etc/fstab.
1566 (add_usr_mnts): Only create mounts if corresponding got_usr_bin and
1567 got_usr_lib flags are not set.
1568 (read_mounts_nt): Initialize got_usr_bin and got_usr_lib to false.
1569 Always call add_usr_mnts, even if from_fstab succeeded.
1570 * ntdll.h: Include ddk/ntifs.h.
1571
b4473ece
CV
15722009-05-12 Corinna Vinschen <corinna@vinschen.de>
1573
1574 * filemanip.cc (GetFileAttributesW): Add accidentally omited
1575 OBJ_CASE_INSENSITIVE when creating OBJECT_ATTRIBUTES.
1576 (SetFileAttributesW): Ditto.
1577 (MoveFileW): Ditto.
1578 (DeleteFileW): Ditto.
1579 (RemoveDirectoryW): Ditto.
1580 (nt_wfopen): Ditto.
1581
e0fd9bd3
CF
15822009-05-11 Bryan Thrall <bryan.thrall@flightsafety.com>
1583
1584 * localdir.cc (load_dialog): Choose description string based on install
1585 type.
1586 * res.rc (IDD_LOCAL_DIR): Replace static description text with
1587 IDC_LOCAL_DIR_DESC.
1588 * resource.h (IDS_LOCAL_DIR_DOWNLOAD): New string resource id.
1589 (IDS_LOCAL_DIR_INSTALL): Likewise.
1590 (IDC_LOCAL_DIR_DESC): New text control resource id.
1591
15922009-05-11 Christopher Faylor <me+cygwin@cgf.cx>
1593
1594 * main.cc (set_cout): Simplify code a little.
1595
18d74072
CV
15962009-05-11 Bryan Thrall <bryan.thrall@flightsafety.com>
1597
1598 * choose.cc (ChooserPage::OnMessageCmd): Clear search filter when
1599 clear button clicked.
1600 * res.rc (IDD_CHOOSE_DIALOG): Add IDC_CHOOSE_CLEAR_SEARCH button.
1601 * resource.h (IDC_CHOOSE_CLEAR_SEARCH): New button resource ID.
1602
6dcfeb7d
CV
16032009-05-11 Corinna Vinschen <corinna@vinschen.de>
1604
1605 * UserSettings.cc (UserSettings::settingFileForLoad): Fix local load
1606 path strings.
1607 (UserSettings::settingFileForSave): Never store in cwd.
1608 * autoload.c (ntdll): Autoload ntdll.dll functions here.
1609 * desktop.cc (make_cygwin_bat): Use GetFileAttributesW rather than
1610 _waccess. Use nt_wfopen instead of _wfopen.
1611 (save_icon): Ditto.
1612 * filemanip.cc (get_file_size): Call io_stream::open with empty mode
1613 string to avoid opening file twice.
1614 (GetFileAttributesW): New function to replace Win32 function with
1615 equivalent function opening files with backup intent.
1616 (SetFileAttributesW): Ditto.
1617 (MoveFileW): Ditto.
1618 (DeleteFileW): Ditto.
1619 (RemoveDirectoryW): Ditto.
1620 (nt_wfopen): New function to replace _wfopen with equivalent function
1621 opening files with backup intent.
1622 * filemanip.h (nt_wfopen): Declare.
1623 * io_stream_cygfile.cc (io_stream_cygfile::io_stream_cygfile): Initalize
1624 lasterr to 0. Allow empty mode and don't open file, if so. Call
1625 nt_wfopen rather than _wfopen.
1626 (io_stream_cygfile::exists): Use GetFileAttributesW rather than
1627 _waccess.
1628 (io_stream_cygfile::get_size): Use CreateFileW/GetFileSize to get
1629 file size on NT.
1630 * io_stream_file.cc (io_stream_file::io_stream_file): Initalize lasterr
1631 to 0. Allow empty mode and don't open file, if so. Call nt_wfopen
1632 rather than _wfopen.
1633 (io_stream_file::exists): Use GetFileAttributesW rather than _waccess.
1634 (io_stream_file::remove): Don't try to remove non-existant file.
1635 (io_stream_file::get_size): Use CreateFileW/GetFileSize to get
1636 file size on NT. Add comment to keep track of 2GB border.
1637 * mkdir.cc: Remove function pointers for ntdll functions.
1638 (init_ntfuncs): Remove function.
1639 (mkdir_p): Drop call to init_ntfuncs. Call ntdll functions directly
1640 rather than over local function pointers.
1641 * ntdll.h: New file.
1642 * postinstall.cc (do_postinstall_reflector): Switch to admins group
ca2b7505 1643 as primary group after postinstall scripts have been written.
6dcfeb7d
CV
1644 Explain why.
1645 (do_postinstall): Add comment.
1646 * res.rc: Bump copyright date.
1647 * win32.h (class TokenGroupCollection): Remove.
1648 * win32.cc (TokenGroupCollection::populate): Remove.
1649 (TokenGroupCollection::find): Remove.
1650 (NTSecurity::setDefaultSecurity): Drop reading token groups. Just
1651 try to switch to admins group as primary group.
1652
4b47445f
CV
16532009-05-07 Corinna Vinschen <corinna@vinschen.de>
1654
1655 * package_db.cc (ConnectedLoopFinder::doIt): Revert patch from
1656 2008-08-29. Add dumb hardcoded algorithm to make sure base-cygwin
1657 and base-passwd are always the first packages in the postinstall
1658 executable order.
1659
8752dea2
CV
16602009-05-06 Corinna Vinschen <corinna@vinschen.de>
1661
1662 * install.cc (Installer::StandardDirs): Add /home with 1777 perms.
1663 * main.cc (main): Drop setting $CYGWIN to nontsec.
1664
059906b3
DK
16652009-04-24 Andrew Punch <andrew@magneticbooks.com.au>
1666
1667 * PickView.h: Add #include <string>.
1668 (PickView::SetPackageFilter): Add new function.
1669 (PickView::packageFilterString): Add new string data member.
1670 * PickView.cc (PickView::setViewMode): Use it to filter names.
1671 (PickView::insert_category): Likewise.
1672 (PickView::PickView): Initialise packageFilterString to blank.
1673 * res.rc (IDD_CHOOSE): Add IDC_CHOOSE_SEARCH_EDIT and
1674 IDC_CHOOSE_SEARCH_LABEL controls.
1675 (IDS_SEARCH_TOOLTIP): Add new string resource.
1676 * resource.h (IDS_SEARCH_TOOLTIP): New string resource ID.
1677 (IDC_CHOOSE_SEARCH_EDIT): New edit control ID.
1678 (IDC_CHOOSE_SEARCH_LABEL): Mew static text control ID.
1679 * choose.cc (ChooserControlsInfo[]): Add IDC_CHOOSE_SEARCH_LABEL
1680 and IDC_CHOOSE_SEARCH_EDIT controls to auto-resize list.
1681 (ChooserPage::OnInit): Add tooltip to search edit box.
1682 (ChooserPage::OnMessageCmd): Handle EN_CHANGE event from
1683 IDC_CHOOSE_SEARCH_EDIT.
1684
6bfd5236
DK
16852009-04-24 Dave Korn <dave.korn.cygwin@gmail.com>
1686
1687 * propsheet.cc (PropSheetWndProc): Re-enable hasMinRect.
1688
d29a864d
CV
16892009-04-23 Corinna Vinschen <corinna@vinschen.de>
1690
1691 * win32.h (NTSecurity::primaryGroupSID): Convert to a structure for
1692 direct usage in GetTokenInformation.
1693 (NTSecurity::osid): Remove.
1694 (NTSecurity::setAdminGroup): Declare.
1695 * win32.cc (NTSecurity::resetPrimaryGroup): Accommodate change to
1696 primaryGroupSID. Add log output.
1697 (NTSecurity::setAdminGroup): New method.
1698 (NTSecurity::setDefaultSecurity): Use local structures for getting
1699 TOKEN_USER and setting TOKEN_OWNER information. Accommodate change to
1700 primaryGroupSID. Slightly enhance log output.
1701 Only set primary group to Administrators group when installing for
1702 all users. Call setAdminGroup to do it.
1703
770e3aed
CV
17042009-04-22 Corinna Vinschen <corinna@vinschen.de>
1705
1706 * mklink2.cc (mkcygsymlink_nt): Allow 4K chars in symlink. Use strncat
1707 rather than strcat.
1708 * postinstall.cc (do_postinstall): Reset user token to original
1709 primary group.
d29a864d 1710 * win32.cc (NTSecurity::resetPrimaryGroup): New method.
770e3aed
CV
1711 (NTSecurity::setDefaultSecurity): Store original primary group in
1712 new NTSecurity member primaryGroupSID. Set primary group in user token
1713 to Administrators group for admin users. Align comment.
1714 * win32.h (class NTSecurity): Add member primaryGroupSID.
1715 (NTSecurity::resetPrimaryGroup): Declare.
1716
a03b43ad
CF
17172009-04-09 Christopher Faylor <me+cygwin@cgf.cx>
1718
1719 * main.cc (set_cout): Load AttachConsole dynamically to avoid using it
1720 on older Windows which don't support it.
1721
c8356810
CF
17222009-03-21 Christopher Faylor <me+cygwin@cgf.cx>
1723
1724 * LogFile.cc (LogFile::endEntry): Output messages to stdout.
1725 * main.cc (set_cout): New function. Sets stdout to console if one
1726 exists.
1727 (main): Redirect stdout to console if unattended_mode or help option is
1728 specified and no stdout is available.
1729
17302009-03-21 Terry Fleming <terrynfleming@gmail.com>
1731 Christopher Faylor <me+cygwin@cgf.cx>
1732
1733 * propsheet.cc (PropSheetWndProc): Detect a Window closing event and
1734 issue an "Are you sure" message.
1735
a2488a3c
CV
17362008-08-29 Corinna Vinschen <corinna@vinschen.de>
1737
1738 * package_db.cc (ConnectedLoopFinder::doIt): Add code to get a basic
1739 order into the dependency list. Add comment to explain why.
1740
ef3be327
BD
17412008-08-22 Brian Dessent <brian@dessent.net>
1742
1743 * KeysSetting.cc: Include string.h for memcpy et al.
1744 * filemanip.cc: Include stdlib.h for for mbstowcs.
1745 * io_stream_cygfile.h: Update cygmkdir_p prototype for mode_t.
1746 * mount.cc (conv_fstab_spaces): Silence gcc 4.3 warning ("parentheses
1747 around assignment used as truth value").
1748
e0a4fb63
CV
17492008-08-20 Corinna Vinschen <corinna@vinschen.de>
1750
1751 * install.cc (Installer::StandardDirs): Additionally create /var/log
1752 dir. Set mode of /var/log and /var/run to 01777.
1753 * localdir.cc (LocalDirSetting::save): Create /var/log with 01777
1754 permissions before creating setup.log files.
1755
be617b59
CV
17562008-08-20 Corinna Vinschen <corinna@vinschen.de>
1757
1758 * io_stream_cygfile.cc (io_stream_cygfile::set_mtime_and_mode):
1759 Accommodate SetPosixPerms being method of nt_sec.
1760 * mkdir.cc (mkdir_p): Ditto.
1761 * mklink2.cc (mkcygsymlink_nt): Ditto.
1762 * win32.cc: Slightly rearrange.
1763 (NTSecurity::SetPosixPerms): Make SetPosixPerms method of NTSecurity
1764 rather than stand-alone function. Remove dynamic allocation for
1765 security descriptors in favor of static allocation. Drop out
1766 preliminary if well-known SIDs are not initialized. Slightly change
1767 and rearrange comments. Add creating NULL SID ACE for special
1768 permissions.
1769 (NTSecurity::initialiseWellKnownSIDs): New function, replacing
1770 NTSecurity::initialiseEveryOneSID. Initialize all well-known SIDs
1771 here. Set wellKnownSIDsinitialized to true on success.
1772 (NTSecurity::setDefaultDACL): Don't call initialiseEveryOneSID. Change
1773 comment. Drop setting failed. Don't open process token here.
1774 (NTSecurity::setBackupPrivileges): New function.
1775 (NTSecurity::setDefaultSecurity): Call initialiseWellKnownSIDs.
1776 Open process token here. Disable setting primary group. Add comment
1777 to explain why.
1778 * win32.h (SetPosixPerms): Move to NTSecurity.
1779 (class NTSecurity): Add SetPosixPerms method. Make all SIDs private
1780 again. Make NoteFailedAPI private. Add setBackupPrivileges method.
1781 Rename usid to UsersSID. Remove failed method and _failed member.
1782 Add wellKnownSIDsinitialized accessors and _wellKnownSIDsinitialized
1783 member.
1784
b41c2908
CV
17852008-08-19 Corinna Vinschen <corinna@vinschen.de>
1786
1787 * install.cc (struct std_dirs_t): New type.
1788 (class Installer): Change type of StandardDirs to std_dirs_t.
1789 (Installer::StandardDirs): Store filename and mode.
1790 (do_install_thread): Call io_stream::mkpath_p with name and mode from
1791 Installer::StandardDirs.
1792 * main.cc (main): Call setDefaultSecurity on global nt_sec.
1793 * IOStreamProvider.h (IOStreamProvider::mkdir_p): Add mode parameter.
1794 * LogFile.cc (LogFile::log_save): Call io_stream::mkpath_p with 0755
1795 mode.
1796 * UserSettings.cc (UserSettings::settingFileForSave): Ditto.
1797 * desktop.cc (make_link): Ditto.
1798 * download.cc (download_one): Ditto.
1799 * ini.cc (do_remote_ini): Ditto.
1800 (do_ini_thread): Ditto.
1801 * package_db.cc (packagedb::flush): Ditto.
1802 * archive.cc (archive::extract_file): Ditto. Call set_mtime_and_mode
1803 with mode from archive. Add code to handle directory permissions as
1804 well.
1805 * archive_tar.cc (archive_tar::get_mtime): Return time_t. Reformat.
1806 (archive_tar::get_mode): New method.
1807 * archive_tar.h (class archive_tar_file): Fix prototypes. Replace
1808 prototype for set_mtime with prototype for set_mtime_and_mode.
1809 (class archive_tar): Ditto.
1810 * archive_tar_file.cc (archive_tar_file::get_mtime): Return time_t.
1811 (archive_tar_file::get_mode): New method returning mode from tar header.
1812 * compress_bz.cc (compress_bz::set_mtime_and_mode): Replace set_mtime.
1813 (compress_bz::get_mtime): Return time_t.
1814 (compress_bz::get_mode): New function.
1815 * compress_gz.cc: Ditto.
1816 * compress_lzma.cc: Ditto.
1817 * io_stream.cc (io_stream::mkpath_p): Take additional file mode.
1818 Call mkdir_p with additional file mode.
1819 * io_stream_cygfile.cc (CygFileProvider::mkdir_p): Take additional file
1820 mode.
1821 (cygmkdir_p): Ditto. Call mkdir_p with additional file mode.
1822 (io_stream_cygfile::set_mtime_and_mode): Replace set_mtime. Call
1823 SetPosixPerms.
1824 * io_stream_file.cc (FileProvider::mkdir_p): Take additional file mode.
1825 (io_stream_file::set_mtime_and_mode): Replace set_mtime.
1826 * mkdir.cc (init_ntfuncs): New function to initialize function pointers
1827 from ntdll.dll.
1828 (mkdir_p): Take additional file mode. On NT, use NT functions to create
1829 directory. Call SetPosixPerms.
1830 * compress_bz.h: Change prototypes accordingly.
1831 * compress_gz.h: Ditto.
1832 * compress_lzma.h: Ditto.
1833 * io_stream.h: Ditto.
1834 * io_stream_cygfile.h: Ditto.
1835 * io_stream_file.h: Ditto.
1836 * io_stream_memory.h: Ditto.
1837 * mkdir.h: Ditto.
1838 * mklink2.cc (mkcygsymlink_nt): Open file with STANDARD_RIGHTS_ALL
1839 access and FILE_FLAG_BACKUP_SEMANTICS flag. Call SetPosixPerms.
1840 * mount.cc (from_fstab): Open file with FILE_FLAG_BACKUP_SEMANTICS.
1841 * script.cc (OutputLog::OutputLog): Call io_stream::mkpath_p with 0755
1842 mode. Open file with FILE_FLAG_BACKUP_SEMANTICS.
1843 * win32.cc (SetPosixPerms): New function to set POSIX-like permissions.
1844 (nt_sec): New global NTSecurity variable.
1845 (NTSecurity::setDefaultDACL): Open token with TOKEN_ADJUST_PRIVILEGES.
1846 (NTSecurity::setDefaultSecurity): Enable SE_BACKUP_NAME and
1847 SE_RESTORE_NAME privileges if available.
1848 * win32.h (SetPosixPerms): Add prototype.
1849 (class NTSecurity): Make everyOneSID and administratorsSID public.
1850 (nt_sec): Declare.
1851
65288dc7
CV
18522008-08-14 Corinna Vinschen <corinna@vinschen.de>
1853
1854 * mount.cc (unconvert_slashes): New inline function.
1855 (skip_ws): New inline function.
1856 (find_ws): New inline function.
1857 (conv_fstab_spaces): New inline function.
1858 (from_fstab_line): New function to read single line from fstab file.
1859 (from_fstab): New function to read /etc/fstab file and fill mount
1860 table.
1861 (read_mounts_nt): Call from_fstab after getting setup/rootdir from
1862 registry. Only call add_usr_mnts if no fstab file found.
1863
1ae1adf7
CV
18642008-08-13 Corinna Vinschen <corinna@vinschen.de>
1865
1866 * install.cc (Installer::installOne): Skip 46 bytes type tar package
1867 silently.
1868
53d33c5d
CV
18692008-08-13 Corinna Vinschen <corinna@vinschen.de>
1870
1871 * install.cc (Installer::installOne): Use MoveFileExW on NT. Special
1872 case for bug in Windows 2000.
1873 * package_meta.cc (packagemeta::uninstall): Use wide char file functions
1874 on NT.
1875 * win32.h (VersionInfo::major): New method.
1876 (VersionInfo::minor): New method.
1877 (OSMajorVersion): Define.
1878 (OSMinorVersion): Define.
1879
2f0315ad
CV
18802008-08-12 Corinna Vinschen <corinna@vinschen.de>
1881
1882 Revamp for Cygwin 1.7.
1883 * desktop.cc (make_cygwin_bat): Use wide char file functions on NT.
1884 (save_icon): Ditto.
1885 * filemanip.cc (tfx_chars): New char table for wide char transformation
1886 of reserved FS chars to UNICODE private use area.
1887 (transform_chars): New static function.
1888 (mklongpath): New function to convert multibyte path to wide char
1889 path with long path prefix.
1890 * filemanip.h (mklongpath): Declare.
1891 * ini.h (SETUP_INI_FILENAME): Use setup.ini filenames as defined in
1892 real life (setup-2.ini/setup.ini).
1893 (SETUP_BZ2_FILENAME): Ditto.
1894 * install.cc (do_install_thread): Don't create registry mount points
1895 on NT, rather create setup/rootdir entry.
1896 * io_stream_cygfile.cc: Throughout use wide char file functions on NT.
1897 (io_stream_cygfile::w_str): New method to create wide char path.
1898 * io_stream_cygfile.h (class io_stream_cygfile): Remove lmode member.
1899 Add wname member and w_str method.
1900 * io_stream_file.cc: Throughout use wide char file functions on NT.
1901 (io_stream_file::w_str): New method to create wide char path.
1902 * io_stream_file.h (class io_stream_file): Remove lmode member.
1903 Add wname member and w_str method.
1904 * mkdir.cc (mkdir_p): Use wide char file functions on NT.
1905 * mklink2.cc (mkcygsymlink_9x): Rename from mkcygsymlink. Make static.
1906 (mkcygsymlink_nt): New static function.
1907 (mkcygsymlink): Just call mkcygsymlink_9x or mkcygsymlink_nt dependent
1908 on OS.
1909 * mount.cc (CYGWIN_INFO_CYGWIN_SETUP_REGISTRY_NAME): Define.
1910 (remove1): Move to earlier point in file to avoid declaration.
1911 (remove_mount): Ditto. Make static.
1912 (create_install_root): New function to create setup/rootdir registry
1913 value on NT.
1914 (read_mounts_9x): Rename from read_mounts. Make static. Conditionalize
1915 for OS.
1916 (add_usr_mnts): New static function.
1917 (read_mounts_nt): Ditto, to read mounts on NT.
1918 (read_mounts): Just call read_mounts_nt or read_mounts_9x dependent on
1919 OS.
1920 (set_root_dir): On NT, call read_mounts.
1921 (cygpath): Only add slash for non-root mount to avoid multiple slashes
1922 in resulting path (invalid in long path names).
1923 * mount.h (find_mount): Drop declaration.
1924 (remove_mount): Ditto.
1925 (create_install_root): Add declaration.
1926 (read_mounts): Accommodate new parameter.
1927 * package_db.cc (chosen_db_task): New global variable.
1928 * package_db.h (chosen_db_task): Declare.
1929 * root.cc (check_if_enable_next): Don't use get_root_dir here to
1930 avoid having to call save_dialog in RootPage::OnMessageCmd.
1931 (GetDlgItemRect): New static inline function.
1932 (SetDlgItemRect): Ditto.
1933 (load_dialog): On NT, stretch "Install For" block to full dialog width
1934 and hide "Default Text File Type" block.
1935 (save_dialog): On NT set root_text always to IDC_ROOT_BINARY.
1936 (RootPage::OnMessageCmd): Remove call to save_dialog.
1937 (RootPage::OnNext): Initialize packagedb here the first time, to
1938 avoid fetching wrong data from different previous installation.
1939 * source.cc (save_dialog): Don't initialize packagedb here, rather
1940 just memorize setting in chosen_db_task for the deferred initialization
1941 in RootPage::OnNext.
1942
0407753c
DK
19432008-08-07 Dave Korn <dave.korn.cygwin@gmail.com>
1944
1945 Implement command-line selection of packages to install and make
1946 unattended mode deal with any dialogs that might arise. A joint
1947 effort synthesized from contributions by:
1948
1949 Dr. Frank Lee <rl201@cam.ac.uk>
1950 Bryan Thrall <bryan.thrall@flightsafety.com>
1951 Kohsuke Kawaguchi <kk@kohsuke.org>
1952 Dave Korn <dave.korn.cygwin@gmail.com>
1953
1954 * install.cc (rebootneeded): Don't define statically here.
1955 (do_install_thread): Let exit_msg reflect rebootneeded.
1956 * main.cc (main): If rebootneeded, log it when exiting.
1957 * msg.cc (mbox): In unattended_mode, choose and log default answer.
1958 * package_db.cc (packagedb::fillMissingCategory): Iterate over all
1959 packages adding those selected by packagemeta::isManuallyWanted to
1960 base category so that command-line selections are installed.
1961 * package_meta.cc (PackageOption): Add new StringOption to allow
1962 command-line selection of packages to add to base install.
1963 (packagemeta::isManuallyWanted): New function tests if package was
1964 selected on command-line.
ca2b7505 1965 (packagemeta::addToCategoryBase): New function adds package to
0407753c
DK
1966 "base" category.
1967 * state.cc (rebootneeded): Define here non-static.
1968 * state.h (rebootneeded): Declare here with extern linkage.
1969 * threebar.cc (ThreeBarProgressPage::MaximizeDialog): Don't change
1970 size when running in unattended mode.
1971
da60e4b2
CF
19722008-08-05 Christopher Faylor <me+cygwin@cgf.cx>
1973
1974 * UserSettings.cc (UserSettings::settingFileForLoad): Look locally for
1975 settings before looking outside of current directory.
1976 * choose.cc (ChooserPage::ChooserPage): Record the property sheet's
1977 current show state via new passed in parameter.
1978 * choose.h (ChooserPage::ChooserPage): Reflect change in argument list.
1979 (ChooserPage::nCmdShow): Define new element.
1980 * main.cc (main): Send current show state to Chooser.
1981 * package_version.cc (packageversion::set_requirements): Increase
1982 recursion check from 5 to 30.
1983 * propsheet.cc (PropSheetWndProc): Register hwndDlg with
1984 ThreeBarProgressPage.
1985 * threebar.cc (ControlAdjuster::ControlInfo): Initialize cmd_show_set.
1986 (ThreeBarProgressPage::MaximizeDialog): New function.
1987 (ThreeBarProgressPage::OnMessageApp): Call MaximizeDialog to maximize
1988 package selection screen and restore when done.
1989 * threebar.h (ThreeBarProgressPage::MaximizeDialog): Declare function.
1990 (ThreeBarProgressPage::cmd_show_set): Declare variable.
1991 (ThreeBarProgressPage::cmd_show): Declare variable.
1992 (ThreeBarProgressPage::ins_dialog): Declare variable.
1993 (ThreeBarProgressPage::SetHwndDialog): Define function.
1994
5bb88929
CW
19952008-07-22 Charles Wilson <cygwin@cwilson.fastmail.fm>
1996
1997 Add support for .tar.lzma files (decompress only).
1998
1999 * Makefile.am: Add new files.
2000 * compress.cc (compress::decompress): add support
2001 for compress_lzma.
2002 * compress_lzma.h: new file.
2003 * compress_lzma.cc: new file.
2004 * filemanip.cc (find_tar_ext): add support for
2005 .tar.lzma files.
2006 * install.cc (Installer::installOne): update comments.
2007 * lzma-sdk/LzmaDec.h: new file.
2008 * lzma-sdk/LzmaDec.c: new file.
2009 * lzma-sdk/Types.h: new file.
2010
5bc84ff1
CW
20112008-07-08 Charles Wilson <cygwin@cwilson.fastmail.fm>
2012
2013 * compress.cc (compress::decompress): clean up concrete
2014 decompressor objects on failure -- but in that case, do
2015 NOT destroy original io_stream.
2016 * compress_bz.h (compress_bz::release_original): new method.
2017 (owns_original): new member variable.
2018 * compress_bz.cc (compress_bz::release_original): new method.
2019 (compress_bz::compress_bz): take ownership of parent by default.
ca2b7505 2020 (compress_bz::~compress_bz): only delete original if
5bc84ff1
CW
2021 owns_original is true.
2022 * compress_gz.h (compress_gz::release_original): new method.
2023 (owns_original): new member variable.
2024 * compress_gz.cc (compress_gz::release_original): new method.
2025 (compress_gz::construct): take ownership of parent by default.
ca2b7505 2026 (compress_gz::~compress_gz): only delete original if
5bc84ff1
CW
2027 owns_original is true.
2028
fe25359c
DK
20292008-06-25 Dave Korn <dave.korn.cygwin@gmail.com>
2030
2031 * configure.in, gpg-error-config-fake: Revert previous removal.
2032
586f2b08
DK
20332008-06-25 Dave Korn <dave.korn.cygwin@gmail.com>
2034
2035 * net.cc: Correct stray CRLF.
2036
8f016701
DK
20372008-06-25 Dave Korn <dave.korn.cygwin@gmail.com>
2038
2039 * configure.in (ac_cv_path_GPG_ERROR_CONFIG): Remove nasty hack.
2040 * gpg-error-config-fake: Delete file obsoleted by de-hackification.
2041
1cc1fad4
CF
20422008-06-24 Christopher Faylor <me+cygwin@cgf.cx>
2043
2044 * configure.in: Disable shared library builds.
2045
be6622c0
CF
20462008-06-24 Christopher Faylor <me+cygwin@cgf.cx>
2047
2048 * Makefile.am: Make and install libraries into common location and use
2049 them from there.
2050 * configure.in: Find gpg-error-config in the libgpg-error/src
2051 subdirectory rather than using the host system's version. Set the
2052 prefix and exec_prefix to a common location for the subdirs so that
2053 useful files will be installed in a common location.
2054
dbfe3c19
DK
20552008-06-22 Dave Korn <dave.korn.cygwin@gmail.com>
2056
be6622c0
CF
2057 Merged across diffs between setup_crypto_branch_branchpoint and
2058 setup_crypto_branch_mergepoint2 from setup_crypto_branch.
dbfe3c19
DK
2059
2060 * crypto.cc, crypto.h, gpg-packet.cc, gpg-packet.h, KeysSetting.cc,
2061 KeysSetting.h, gpg-error-config-fake, cygwin.pub, cyg-pubkey.h,
be6622c0 2062 gpg-key-to-s-expr.sh: New files.
dbfe3c19 2063 * ini.cc, ini.h, resource.h, res.rc, netio.cc, Makefile.am,
be6622c0 2064 configure.ac, libgetopt++/src/OptionSet.cc: Modified files.
dbfe3c19 2065
a127a91e 20662008-06-21 Dave Korn <dave.korn.cygwin@gmail.com>
dbfe3c19 2067
ca2b7505 2068 * ini.cc (do_remote_ini): Revert misbegotten removal of
dbfe3c19
DK
2069 not-always-superfluous-after-all added slash in URLs.
2070
a127a91e 20712008-06-18 Dave Korn <dave.korn.cygwin@gmail.com>
dbfe3c19
DK
2072
2073 * gpg-packet.h (GPG_KEY_SEXPR_BUF_SIZE): Move from here ...
2074 * crypto.h (GPG_KEY_SEXPR_BUF_SIZE): ... to here.
2075 (GPG_KEY_MAX_COEFF_SIZE): Add related definition.
2076
a127a91e 20772008-06-18 Dave Korn <dave.korn.cygwin@gmail.com>
dbfe3c19
DK
2078
2079 * gpg-packet.cc (walk_packets_1): Check packet length field is
2080 valid sane and possible to avoid malicious manipulation.
2081 * ChangeLog: Corrected date on previous commit.
2082
a127a91e 20832008-06-18 Dave Korn <dave.korn.cygwin@gmail.com>
dbfe3c19 2084
ca2b7505 2085 * crypto.cc (add_key_from_sexpr): Use real buffer size, not debug
dbfe3c19
DK
2086 constant size.
2087
a127a91e 20882008-06-16 Dave Korn <dave.korn.cygwin@gmail.com>
dbfe3c19
DK
2089
2090 * crypto.cc (verify_ini_file_sig): Actually set init-once flag!
2091
a127a91e 20922008-06-16 Dave Korn <dave.korn.cygwin@gmail.com>
dbfe3c19
DK
2093
2094 * crypto.cc (KeepUntrustedKeysOption): Fix helpstring punctuation.
2095
a127a91e 20962008-06-16 Dave Korn <dave.korn.cygwin@gmail.com>
dbfe3c19
DK
2097
2098 * crypto.cc (verify_ini_file_sig): Fix two minor logic errors.
2099
a127a91e 21002008-06-16 Dave Korn <dave.korn.cygwin@gmail.com>
dbfe3c19
DK
2101
2102 * ini.h (current_ini_sig_name): Declare extern.
2103 * ini.cc (current_ini_sig_name): New variable.
2104 (NoVerifyOption): New boolean option.
2105 (do_remote_ini): If sig verification not disabled, attempt to
2106 download the matching sig file for any setup.bz2 or setup.ini
2107 and use it to verify or discard the download.
2108
a127a91e 21092008-06-16 Dave Korn <dave.korn.cygwin@gmail.com>
dbfe3c19
DK
2110
2111 * resource.h (IDS_SIG_INVALID, IDS_CRYPTO_ERROR): Reserve IDs for
2112 two new message strings.
2113 * res.rc (IDS_SIG_INVALID, IDS_CRYPTO_ERROR): Define the text.
2114
a127a91e 21152008-06-16 Dave Korn <dave.korn.cygwin@gmail.com>
dbfe3c19
DK
2116
2117 * Makefile.am (setup_SOURCES): Add new files crypto.cc, crypto.h,
2118 cyg-pubkey.h, gpg-packet.cc, gpg-packet.h. KeysSetting.cc and
2119 KeysSetting.h to the build.
2120 * crypto.cc, crypto.h, gpg-packet.cc, gpg-packet.h, KeysSetting.cc,
2121 KeysSetting.h: New files. Adds gpg sig verification support.
2122
a127a91e 21232008-06-16 Dave Korn <dave.korn.cygwin@gmail.com>
dbfe3c19
DK
2124
2125 * Makefile.am (DIST_SUBDIRS, SUBDIRS): Add libgpg-error and
2126 libgcrypt subdirs.
2127 (AM_CPPFLAGS): Add -I paths to generated headers in both and to
2128 shipped headers in libgcrypt.
2129 (setup_LDADD): Add libgpg-error.a and libgcrypt.a to final link.
2130
2131 * configure.in (ac_cv_path_GPG_ERROR_CONFIG): Preload into cache
2132 to fake out libgcrypt configure process.
2133 (AC_CONFIG_SUBDIRS): Add libgpg-error/ and libgcrypt/
2134
2135 * gpg-error-config-fake: New shell script to redirect libgcrypt
2136 sub-configure into looking for newly-built libgpg-error.
2137
a127a91e 21382008-06-16 Dave Korn <dave.korn.cygwin@gmail.com>
dbfe3c19
DK
2139
2140 * setup/libgpg-error/: Fresh import of upstream sources of
2141 libgpg-error-1.6.tar.bz2 from http://www.gnupg.org/
2142 * setup/libgcrypt/: Fresh import of upstream sources of
2143 libgcrypt-1.4.1.tar.bz2 from http://www.gnupg.org/
2144
a127a91e 21452008-06-16 Dave Korn <dave.korn.cygwin@gmail.com>
dbfe3c19
DK
2146
2147 * netio.cc (NetIO::set_url): Avoid double-free bug on delete
2148 by setting path to a strdup of url rather than using the same
2149 pointer value twice.
2150
a127a91e 21512008-06-16 Dave Korn <dave.korn.cygwin@gmail.com>
dbfe3c19
DK
2152
2153 * cygwin.pub: Add reference copy of Cygwin setup signing key.
2154 * gpg-key-to-s-expr.sh: New bash script. Outputs textual
2155 representation of public key in s-expr format.
2156 * cyg-pubkey.h: New header generated by the above from Cygwin
2157 setup signing key. Currently needs manual regeneration if key
2158 ever updated.
2159
2cae901b
BD
21602008-04-16 Brian Dessent <brian@dessent.net>
2161
2162 * mount.cc: Include malloc.h.
2163 (is_admin): Use alloca instead of a VLA in case
2164 GetTokenInformation is sensitive to alignment.
2165
784414bf
BD
21662008-04-15 Brian Dessent <brian@dessent.net>
2167
2168 * mount.cc (is_admin): Get explicit size of required buffer by
2169 calling GetTokenInformation first with NULL.
2170
9d44d4f7
BD
21712008-04-10 Brian Dessent <brian@dessent.net>
2172
2173 * Makefile.am (setup_LDFLAGS): Make sure static libbz2 and zlib
2174 are used.
2175
1db74bf0
BD
21762008-04-09 Brian Dessent <brian@dessent.net>
2177
2178 * README: flex and bison are required when building from CVS.
2179
09aa7d89
BD
21802008-04-08 Brian Dessent <brian@dessent.net>
2181
2182 * Makefile.am (snapshot): Provide default value of ${cygwinsite}
2183 if not set.
2184
60dfa7aa
BD
21852008-04-08 Brian Dessent <brian@dessent.net>
2186
2187 * Makefile.am (release): Use -f so that "make release" works
2188 when existing binaries of the same name exist.
2189
33ef69a7
BD
21902008-04-08 Brian Dessent <brian@dessent.net>
2191
2192 * res.rc (IDD_SPLASH): Update copyright years on splash page.
2193
51325df5
BD
21942008-04-08 Brian Dessent <brian@dessent.net>
2195
2196 * CHANGES: Update.
2197 * install.cc (Installer::installOne): Cope with compressed
2198 0-byte dummy packages. Fix progress bar update bug introduced
2199 in earlier refactoring.
2200
2e0aaec9
BD
22012008-04-08 Brian Dessent <brian@dessent.net>
2202
2203 * CHANGES: Update.
2204
22052008-04-08 Brian Dessent <brian@dessent.net>
2206
2207 Various warning/header cleanups necessary for clean gcc 4.3 build.
2208 * ConnectionSetting.cc: Include stdlib.h.
2209 * LogFile.cc: Ditto.
2210 * Makefile.am: Don't hardcode paths to MinGW libz and libbz2.
2211 * PickView.cc: Include limits.h.
2212 * String++.cc: Include string.h.
2213 * archive_tar.cc (archive_tar::next_file_name): Silence nested-if
2214 warning.
2215 * autoload.c: Switch back to .text section before emiting
2216 autoload_common.
2217 * choose.cc: Include stdlib.h and algorithm.
2218 * compress_gz.cc: Include memory.h and malloc.h.
2219 * filemanip.cc: Include string.h.
2220 (parse_filename): Silence nested-if warning.
2221 * nio-ftp.cc (NetIO_FTP::NetIO_FTP): Silence warning.
2222 * package_db.cc: Include algorithm.
2223 * site.cc (get_site_list): Silence warning.
2224 * win32.cc: Include memory.
2225 * csu_util/MD5Sum.cc: Include string.h.
2226
d0355815 22272008-03-02 Dave Korn <dave.korn@artimi.com>
4e6c8d9e 2228
d0355815 2229 * install.cc (Installer::installOne): Accept new HWND argument
4e6c8d9e
DK
2230 from caller and pass it to MessageBox calls so that MB_TASKMODAL
2231 can work.
2232 (check_for_old_cygwin): Likewise.
2233 (do_install_thread): Pass owner's HWND (from thread context) when
2234 calling them.
2235
84ea7bd6
DK
22362008-02-23 Dave Korn <dave.korn@artimi.com>
2237
2238 * cygpackage.cc (cygpackage::getfirstfile): Guard against trying to
2239 construct std::string from NULL returned by io_stream::gets when the
2240 stream decompressor fails on a corrupt *.lst.gz file.
2241
22ade75c
DK
22422008-02-21 Dave Korn <dave.korn@artimi.com>
2243
2244 * geturl.cc (progress): Correct SI unit notation.
2245
b612bff1
DK
22462008-02-01 Vincent Privat <vincent.privat@gmail.com>
2247
2248 * net.cc (OnInit): New StringOption (ProxyOption)
2249 This new option (-p) allows to call setup.exe with a proxy
2250 in its command-line arguments.
2251
a81fbc25
BD
22522007-07-31 Brian Dessent <brian@dessent.net>
2253
2254 * ini.cc (do_remote_ini): Fix crash due to double free of ini_file.
2255
92ef6cf8
BD
22562007-07-30 Brian Dessent <brian@dessent.net>
2257
2258 * CHANGES: Update.
2259 * configure.in (AM_INIT_AUTOMAKE): Enable more automake warnings.
2260 * Makefile.am (INCLUDES): Use AM_CPPFLAGS instead.
2261 (CLEANFILES): Add. Minor portability tweaks.
2262 * tests/Makefile.am (INCLUDES): Use AM_CPPFLAGS instead.
2263 * archive.cc (archive::extract): Try to be more compatible when
2264 opening tar files.
2265 * compress_bz.cc: Fix whitespace throughout.
2266 (compress_bz::~compress_bz): Ensure that underlying io_stream's dtor is
2267 also run.
2268 * install.cc (Installer::installOne): Refactor.
2269 * package_db.cc (ConnectedLoopFinder::doIt): Move some log spewage into
2270 setup.log.full from setup.log.
2271 (packagedb::connectedBegin): Ditto. Consolidate log output to one line.
2272
0a0203db
BD
22732007-07-02 Brian Dessent <brian@dessent.net>
2274
2275 * CHANGES: Update.
2276
475ee6a3
BD
22772007-06-26 Brian Dessent <brian@dessent.net>
2278
2279 * Makefile.am (release): Drop inconsistent use of $(EXEEXT). Leave an
2280 untouched copy of setup.exe so that later make invocations don't
2281 unnecessarily rebuild it.
2282 (snapshot): Fix typo.
2283 * install.cc (md5_one): Don't try to check packages whose
2284 pkgsource.Cached () is NULL, as with those whose download failed.
2285
12dea33a
BD
22862007-06-26 Brian Dessent <brian@dessent.net>
2287
2288 * CHANGES: Update to reflect release branch.
2289
22902007-06-26 Brian Dessent <brian@dessent.net>
812cdd92
BD
2291
2292 * CHANGES: Make current.
2293
feee2f2b
BD
22942007-05-30 Brian Dessent <brian@dessent.net>
2295
2296 * find.h (class Find): Make _start_dir non-const.
2297 * find.cc (Find::Find): Append a trailing slash to _start_dir only if
2298 it does not already contain one.
2299 (Find::accept): Use the previously stored value of _start_dir rather
2300 than unconditionally appending a slash.
2301
b941c8be
BD
23022007-05-29 Brian Dessent <brian@dessent.net>
2303
2304 * Makefile.am: No need to specify the default value of --preprocessor
2305 to windres. Rework the automatic version extraction rules so that the
2306 source tarball is generated with the proper name and directory instead
2307 of setup-0. Update snapshot rule to also upload a copy of the binary
2308 with debugging symbols still present.
2309
dacb1ebd
BD
23102007-05-29 Brian Dessent <brian@dessent.net>
2311
2312 This is a general tidying up/modernization of the build infrastructure.
2313 Renaming the lexer and parser to .ll and .yy allows using automake's
2314 builtin support for flex and bison with C++ sources, and libinilex is a
2315 slightly cleaner way of omitting -Werror.
2316
2317 * Makefile.am (AUTOMAKE_OPTIONS): Move to AM_INIT_AUTOMAKE.
2318 (AM_YFLAGS): Define.
2319 (AM_LFLAGS): Define.
2320 (INCLUDES): Remove redundant mingw directory.
2321 (EXTRA_DIST): Adjust for newly named lexer/parser.
2322 (BUILT_SOURCES): Ditto.
2323 (inilint_LDADD): Ditto.
2324 (inilint_SOURCES): Ditto.
2325 (setup_LDADD): Ditto.
2326 (setup_SOURCES): Ditto.
2327 (iniparse.cc): Remove custom rules.
2328 (inilex.cc): Ditto.
2329 * configure.in: Update quoting and use modern form of AC_INIT and
2330 AM_INIT_AUTOMAKE.
2331 * inilex.l: Rename from this ...
2332 * inilex.ll: ... to this.
2333 * iniparse.y: Rename from this ...
2334 * iniparse.yy: ... to this.
2335
eb20d728
BD
23362007-05-29 Brian Dessent <brian@dessent.net>
2337
2338 * IniParseFindVisitor.cc (IniParseFindVisitor::IniParseFindVisitor):
2339 Remove error_buf and error_count initializers.
2340 (IniParseFindVisitor::visitFile): Store filename in current_ini_name.
2341 Use yyerror_count and yyerror_messages in place of removed error_count
2342 and error_buf members.
2343 * IniParseFindVisitor.h (class IniParseFindVisitor): Remove error_buf
2344 and error_count members.
2345 * ini.cc: Include io_stream_memory.h. Remove file static variables
2346 error_buf, error_count, and ini_filename.
2347 (GuiParseFeedback::progress): Remove some verbose log spam.
2348 (do_remote_ini): Recode .ini-fetching logic to properly display parse
2349 errors, and to account for corrupt bzip2 files.
2350 (yyerror): Moved elsewhere.
2351 (fprintf): Delete unused function.
2352 * ini.h: Remove useless __cplusplus guard. Declare extern variables
2353 current_ini_name, yyerror_messages, and yyerror_count.
2354 * inilex.l: Add current_ini_name, yyerror_messages, and
2355 yyerror_count.
2356 (ini_init): Initialize new variables.
2357 (yybol): Delete.
2358 (yyerror): Reimplement using std::string and relocate from ini.cc.
2359 * io_stream.cc (io_stream::copy): Add clarifying comment.
2360
6c8daadf
IP
23612007-05-04 Igor Peshansky <pechtcha@cs.nyu.edu>
2362
2363 * resource.h (IDC_STATIC_HEADER): New control id.
2364 * res.rc (IDD_SPLASH): Adjust the copyright.
2365 (IDD_DESKTOP): Make header text accessible as a separate control.
2366 * desktop.cc (set_status): Use eset() instead of SetWindowText().
2367 (load_dialog): Disable checkboxes and change dialog text in
2368 download-only mode.
2369 (DesktopSetupPage::OnInit): Disable checkboxes in download-only
2370 mode.
2371 * threebar.cc (ThreeBarProgressPage::OnMessageApp): Deprecate the
2372 default fallthrough.
2373 * download.cc (do_download_thread): Explicitly return the next
2374 dialog.
2375
f8dcce01
MB
23762007-04-19 Max Bowsher <maxb1@ukf.net>
2377
2378 * configure.in: Turn inilint default build off again, since I cannot
2379 get it to work.
2380
6b457e67
MB
23812007-04-19 Max Bowsher <maxb1@ukf.net>
2382
54ac354e
MB
2383 * configure.in: Make inilint built by default.
2384
23852007-04-19 Max Bowsher <maxb1@ukf.net>
2386
2387 * inilintmain.cc: Fix multiple compile errors.
6b457e67 2388
86e53214
MB
23892007-04-19 Max Bowsher <maxb1@ukf.net>
2390
2391 * Makefile.am: Make inilint use same warnonly-inilex workaround that
2392 setup already does.
2393
7b21a88e
IP
23942007-03-29 Igor Peshansky <pechtcha@cs.nyu.edu>
2395
2396 * LogFile.cc (LogFile::exit): Write exit_msg directly to log, without
2397 the message box.
2398 * resource.h (IDC_DESKTOP_SEPARATOR,IDC_STATUS_HEADER,IDC_STATUS): New
2399 control ids.
2400 * res.rc (IDD_DESKTOP): Change the caption. Add status information.
2401 * desktop.h (DesktopSetupPage::DesktopSetupPage): Define constructor
2402 in the implementation.
2403 * desktop.cc (DesktopControlsInfo): Position specifiers for status
2404 information items.
2405 (DesktopSetupPage::DesktopSetupPage): Register position specifiers.
2406 (set_status): New static method.
2407 (load_dialog): Set status information, if available.
2408 (DesktopSetupPage::OnInit): Set status header font.
2409
909f5cf9
BD
24102007-03-01 Brian Dessent <brian@dessent.net>
2411
2412 * ini.h (SETUP_INI_FILENAME): Rename setup_9x.ini to setup_legacy.ini.
2413 (SETUP_BZ2_FILENAME): Likewise.
2414
5072c0bb
BD
24152007-02-27 Brian Dessent <brian@dessent.net>
2416
2417 * ini.h (SETUP_INI_FILENAME): Add define.
2418 (SETUP_BZ2_FILENAME): Add define.
2419 * IniParseFindVisitor.cc (IniParseFindVisitor::visitFile): Use
2420 above macros to parameterize setup.ini filename.
2421 * fromcwd.cc (SetupFindVisitor::visitFile): Ditto.
2422 * ini.cc (do_remote_ini): Ditto.
2423 * Makefile.am (setup_SOURCES): Add win32.cc.
2424 * autoload.c: Include windows.h directly instead of win32.h so that
2425 win32.h can contain C++.
2426 * desktop.cc (verinfo): Delete.
2427 (make_link): Use IsWindowsNT to check for NT instead of verinfo.
2428 (DesktopSetupPage::OnInit): Likewise.
2429 * mount.cc (is_admin): Likewise.
2430 * script.cc (init_run_script): Likewise.
2431 * main.cc (class SIDWrapper, SIDWrapper::SIDWrapper,
2432 SIDWrapper::~SIDWrapper, SIDWrapper::theSID, class HANDLEWrapper,
2433 HANDLEWrapper::HANDLEWrapper, HANDLEWrapper::~HANDLEWrapper,
2434 HANDLEWrapper::theHANDLE, class TokenGroupCollection,
2435 TokenGroupCollection::TokenGroupCollection,
2436 TokenGroupCollection::~TokenGroupCollection,
2437 TokenGroupCollection::populate, TokenGroupCollection::find,
2438 class NTSecurity, set_default_sec, NTSecurity::NoteFailedAPI,
2439 NTSecurity::NTSecurity, NTSecurity::failed,
2440 NTSecurity::initialiseEveryOneSID, NTSecurity::setDefaultDACL,
2441 NTSecurity::setDefaultSecurity): Remove implementation of these
2442 classes from this file and into new file win32.cc and existing win32.h.
2443 (main): Fix whitespace and formatting per GNU coding standards.
2444 * res.rc (IDS_SETUPINI_MISSING): Parameterize filename with %s.
2445 * win32.cc: New file containing methods removed from main.cc as well
2446 as new class VersionInfo methods.
2447 * win32.h: Include <string> for std::string.
2448 (class SIDWrapper, class HANDLEWrapper, class TokenGroupCollection,
2449 class NTSecurity): Add classes removed from main.cc.
2450 (class VersionInfo): Add new class.
2451 (GetVer): Declare.
2452 (IsWindowsNT): Define.
2453
5cc32375
BD
24542007-02-20 Brian Dessent <brian@dessent.net>
2455
2456 * README: Modernize list of required packages, and mention doconfigure.
2457
5ef77c46
BD
24582007-02-17 Cesar Strauss <cstrauss@cea.inpe.br>
2459
3c1254b9
MB
2460 * IniDBBuilderPackage.cc (IniDBBuilderPackage::buildPackageSource):
2461 Initialize the version and operator fields of the newly created
2462 PackageSpecification object, so setup can pick the correct source
2463 version later on.
5ef77c46 2464
a875b471
BD
24652007-02-17 Brian Dessent <brian@dessent.net>
2466
2467 * script.cc (Script::run): Check for existance of script file and
2468 return without doing anything if it does not exist.
2469
3a694862
MB
24702006-12-26 Max Bowsher <maxb1@ukf.net>
2471
2472 * IniDBBuilder.h (IniDBBuilder): Make this class abstract.
2473 * IniDBBuilder.cc: Delete file.
2474 * Makefile.am (inilint_SOURCES, setup_SOURCES): Remove IniDBBuilder.cc.
2475
be8736e4
MB
24762006-12-26 Max Bowsher <maxb1@ukf.net>
2477
2478 Add a shell script that documents/centralizes the standard configure
2479 command line.
2480
2481 * doconfigure: New file.
2482 * Makefile.am (EXTRA_DIST): Add doconfigure.
2483
cafda414
IP
24842006-11-28 Igor Peshansky <pechtcha@cs.nyu.edu>
2485
2486 * install.cc (Installer::installOne): If file is in use, ask the user
2487 to stop processes and retry.
2488 (MB_RETRYCONTINUE, IDCONTINUE): New macros.
2489 (hMsgBoxHook): New static field.
2490 (CBTProc): New window hook function.
2491 (_custom_MessageBox): New function.
2492 * CHANGES: Update with the above.
2493
effce34d
IP
24942006-10-12 Igor Peshansky <pechtcha@cs.nyu.edu>
2495
2496 * desktop.cc (make_cygwin_bat,save_icon): Capitalize filename.
2497
7dc7a0a4
BD
24982006-08-06 Igor Peshansky <pechtcha@cs.nyu.edu>
2499
2500 * package_version.cc (packageversion::scan): Catch and handle
2501 validation exception.
2502
0ec7cbc9
BD
25032006-08-06 Igor Peshansky <pechtcha@cs.nyu.edu>
2504
2505 * cygpackage.h (filesize): Remove unused field.
2506 (cygpackage::createInstance): Ditto.
2507 * cygpackage.cc (cygpackage::createInstance): Ditto.
2508 * package_db.cc (packagedb::packagedb): Remove unused variables.
2509 Simplify parsing of installed.db.
2510
c861f482
BD
25112006-08-06 Igor Peshansky <pechtcha@cs.nyu.edu>
2512
2513 * desktop.cc (DesktopSetupPage::OnInit): Remove stray MessageBox.
2514
3d4c5ebb
IP
25152006-05-24 Igor Peshansky <pechtcha@cs.nyu.edu>
2516
2517 * PickPackageLine.h (PickPackageLine::DrawIcon): Move to PickView.
2518 * PickView.h (PickView::DrawIcon): Move from PickPackageLine.
2519 (PickView::icon_dc,PickView::bm_icon): New instance field.
2520 (PickView::rect_icon,PickView::bg_fg_brush): Ditto.
2521 * PickCategoryLine.cc (PickCategoryLine::paint): Use
2522 PickView::DrawIcon() instead of BitBlt().
2523 * PickPackageLine.cc (PickPackageLine::DrawIcon): Move to PickView.
2524 (PickPackageLine::paint): Use PickView::DrawIcon().
2525 * PickView.cc (PickView::~PickView): Delete GDI objects.
2526 (PickView::init): Create icon drawing context.
2527 (PickView::DrawIcon): New function. Use system default colors to
2528 draw bitmaps.
2529 (PickView::paint): Set background color instead of using transparent
2530 mode. Create system-colored brush.
2531
ba2559db
BD
25322006-04-25 Brian Dessent <brian@dessent.net>
2533
2534 * COPYING: New file (GPL).
2535 * Makfile.am (EXTRA_DIST): Add COPYING.
2536
5f9ac473
MB
25372006-04-17 Max Bowsher <maxb1@ukf.net>
2538
2539 * String++.cc, String++.h: Finally, it's time for the long-awaited
2540 departure of 'class String' from this world. setup.exe can now
2541 happily claim to follow the sane path of using just one general
2542 purpose string class throughout :-)
2543
02d06553
MB
25442006-04-17 Max Bowsher <maxb1@ukf.net>
2545
2546 * cygpackage.cc, cygpackage.h, package_version.cc, package_version.h:
2547 Do some String to std::string migration.
2548
1eb2461a
MB
25492006-04-17 Max Bowsher <maxb1@ukf.net>
2550
2551 * package_meta.cc, package_meta.h, package_source.cc,
2552 package_source.h: Do some String to std::string migration.
2553 * package_db.cc: Small tweak to assist with the above.
2554
d19f12fd
MB
25552006-04-17 Max Bowsher <maxb1@ukf.net>
2556
2557 * PickView.cc, PickView.h, package_db.cc, package_db.h:
2558 Do some String to std::string migration.
2559 * package_meta.h: Change a couple of types to assist with the above.
2560
9b0876b3
MB
25612006-04-17 Max Bowsher <maxb1@ukf.net>
2562
2563 * IniDBBuilder.cc, IniDBBuilder.h, IniDBBuilderPackage.cc,
2564 IniDBBuilderPackage.h, PickLine.h, PickPackageLine.cc:
2565 Do some String to std::string migration.
2566
fd93eff9
MB
25672006-04-16 Max Bowsher <maxb1@ukf.net>
2568
2569 * FindVisitor.cc, FindVisitor.h, IniParseFindVisitor.cc,
2570 IniParseFindVisitor.h, ScanFindVisitor.cc, ScanFindVisitor.h, find.cc,
2571 find.h, fromcwd.cc, ini.cc, ini.h, iniparse.y, postinstall.cc:
2572 Do some String to std::string migration.
2573
a3a02820
MB
25742006-04-16 Max Bowsher <maxb1@ukf.net>
2575
2576 * IOStreamProvider.h, archive.cc, archive.h, archive_tar.cc,
2577 archive_tar.h, io_stream.cc, io_stream.h, io_stream_cygfile.cc,
2578 io_stream_cygfile.h, io_stream_file.cc, io_stream_file.h:
2579 Do some String to std::string migration.
2580
2bba98e8
MB
25812006-04-16 Max Bowsher <maxb1@ukf.net>
2582
2583 * desktop.cc, download.cc, install.cc, mount.cc, mount.h, script.cc,
2584 script.h: Do some String to std::string migration.
2585
ee4ad3a7
MB
25862006-04-16 Max Bowsher <maxb1@ukf.net>
2587
2588 * category.cc: Remove source file that contained no code!
2589 * category.h: Delete, moving the single useful line to...
2590 * package_meta.h: ...here. Remove category.h include.
2591 * choose.cc, package_db.h, package_meta.cc: Remove category.h include.
2592 * Makefile.am: Remove references to removed files.
2593
08678720
MB
25942006-04-15 Max Bowsher <maxb1@ukf.net>
2595
2596 * ConnectionSetting.cc, ConnectionSetting.h, Exception.cc,
2597 Exception.h, IniParseFeedback.cc, IniParseFeedback.h, LogFile.cc,
2598 LogFile.h, LogSingleton.h, PackageSpecification.cc,
2599 PackageSpecification.h, SourceSetting.cc, SourceSetting.h,
2600 UserSettings.cc, UserSettings.h, dialog.cc, dialog.h, diskfull.cc,
2601 diskfull.h, filemanip.cc, filemanip.h, inilintmain.cc, localdir.cc,
2602 main.cc, nio-file.cc, nio-http.cc, prereq.cc, prereq.h, proppage.cc,
2603 proppage.h, site.cc, site.h, splash.cc, state.cc, state.h, window.cc,
2604 window.h: Do some String to std::string migration.
2605
cb026227
MB
26062006-04-15 Max Bowsher <maxb1@ukf.net>
2607
2608 * String++.cc, String++.h
2609 (new_cstr_char_array, format_1000s): Migrate String to std::string.
ca2b7505 2610 (casecompare_lt_op, std::string operator+): New.
cb026227 2611
470f4928
MB
26122006-04-06 Max Bowsher <maxb1@ukf.net>
2613
2614 * String++.h, String++.cc
2615 (String::replace): Remove - usused.
2616 (String::find): Remove - semantics do not match std::string.
2617
2618 * root.cc (directory_is_rootdir): Switch to std::string.find().
2619 * script.cc (Script::baseName): Rewrite use of String.find().
2620
2b791966
MB
26212006-03-30 Max Bowsher <maxb1@ukf.net>
2622
2623 * String++.cc (replace): New function to take the place of one form
2624 of String::replace method.
2625 * String++.h (replace): Declare.
2626 (String::replace): Make private.
2627
2628 * desktop.cc (make_cygwin_bat): Use new function.
2629 * filemanip.cc (backslash): Use simple loop in place of
2630 String::replace.
2631 * filemanip.h (backslash): Change signature to use std::string in
2632 place of String.
2633
afa76033
MB
26342006-03-30 Max Bowsher <maxb1@ukf.net>
2635
2636 * String++.cc, String++.h (casecompare): New function replacing
2637 String.casecompare to increase parity with std::string.
2638 (String::casecompare): Make private.
2639
2640 * ConnectionSetting.cc, IniDBBuilderPackage.cc,
2641 IniParseFindVisitor.cc, LogFile.cc, PackageSpecification.cc,
2642 PickView.cc, SourceSetting.cc, String++.cc, String++.h, fromcwd.cc,
2643 io_stream.cc, mount.cc, package_db.cc, package_source.h,
2644 package_version.cc, prereq.h, script.cc:
2645 Use casecompare in place of String::casecompare.
2646
8300be9c
MB
26472006-03-30 Max Bowsher <maxb1@ukf.net>
2648
2649 * String++.cc, String++.h: Remove String(int) constructor, which
2650 was causing dangerously bizarre implicit conversions, and was a point
2651 of disparity between String and std::string.
2652 (stringify): New function to replace functionality removed above.
2653
2654 * PickView.cc (PickView::init_headers),
2655 archive_tar.cc (archive_tar::next_file_name),
2656 cygpackage.cc (cygpackage::setCanonicalVersion):
2657 Make explicit and call out with a FIXME some bizarre behaviour.
2658
2659 * ScanFindVisitor.cc (ScanFindVisitor::visitFile),
2660 filemanip.cc (base), iniparse.y,
2661 threebar.cc (ThreeBarProgressPage::SetBar2):
2662 Make simple adaptations to the changed API.
2663
7c593196
IP
26642006-03-14 Igor Peshansky <pechtcha@cs.nyu.edu>
2665
2666 * PickView.cc (PickView::setViewMode): Auto-expand category if
2667 its name starts with a dot.
2668
3dbb54fc
DK
26692006-03-14 Dave Korn <dave.korn@artimi.com>
2670
2671 * String++.cc (new_cstr_char_array): Handle null input correctly.
2672
e5e2eba8
CF
26732006-03-10 Christopher Faylor <cgf@timesys.com>
2674
2675 * res.rc: Update copyright.
2676 (IDS_MIRROR_LST): Use cygwin.com for mirror list, not
2677 sources.redhat.com.
e5e2eba8 2678 * site.cc (NOSAVE1): Use preferred name of sourceware site.
4f41c01c 2679 (NOSAVE2): sourceware.cygnus.com -> sources.redhat.com.
e5e2eba8
CF
2680 (NOSAVE1_LEN): Use just-defined name to determine length.
2681 (NOSAVE2_LEN): Ditto.
2682 (NOSAVE3_LEN): Ditto.
2683
26842006-03-10 Bas van Gompel <patch-cygsup.buzz@bavag.tmfweb.nl>
2685
2686 * res.rc (IDD_DROPPED): New dialog.
2687 * resource.h (IDD_DROPPED): New dialog-id.
2688 (IDC_DROP_MIRRORS, IDC_DROP_NOWARN): New control-ids.
2689 * site.cc: Add enum for response on dropped mirrors.
2690 (cache_is_usable, cache_needs_writing): New bools.
2691 (cache_warn_urls): New string.
2692 (cached_site-list, dropped_site_list): New SiteLists.
2693 (site_list_type::init, site_list_type::site_list_type): Change to four
2694 parameter form.
2695 (site_list_type::site_list_type, site_list_type::operator=) Copy
2696 servername, area and location.
2697 (load_site_list): New function, broken out of get_site_list. Support
2698 four-parameter site_list_type.
2699 (get_site_list): Break out load_site_list. Move reading cache earlier.
2700 Don't write new cache. Set flags to record cache state. Load both
2701 all_site_list and cached_site_list.
2702 (SiteSetting::registerSavedSite): Use four-parameter site_list_type.
2703 (drop_proc, check_dropped_mirrors, write_cache_list, save_cache_file):
2704 New functions.
2705 (SitePage::OnNext): Check for dropped mirrors and save cache as
2706 appropriate.
2707 (SitePage::OnMessageCmd): Use four-parameter site_list_type.
2708 * site.h
2709 (site_list_type::init, site_list_type::site_list_type): Change to four
2710 parameter form.
2711 (site_list_type): Add servername, area and location members.
2712
b2b35a6e
IP
27132006-03-09 Igor Peshansky <pechtcha@cs.nyu.edu>
2714
2715 * script.cc (Script::run): Fix inverted test for abnormal exit.
2716
966a9815
MB
27172006-03-09 Bas van Gompel <patch-cygsup.buzz@bavag.tmfweb.nl>
2718 Max Bowsher <maxb1@ukf.net>
2719
2720 Provide indication of site that a file is being downloaded from.
2721
2722 * geturl.cc: Use std::string instead of String throughout.
2723 (init_dialog): Put more information into GUI.
2724 Remove unused 'owner' parameter and change all callers.
2725 (progress): Remove spurious \n characters from GUI.
2726 * geturl.h: Use std::string instead of String throughout.
2727 * res.rc (IDD_INSTATUS): Use SS_ENDELLIPSIS.
2728
8e91c2fb
MB
27292006-03-09 Max Bowsher <maxb1@ukf.net>
2730
2731 * Makefile.am (EXTRA_DIST): Add tree-minus.bmp and tree-plus.bmp.
2732
bb810dd8
DK
27332006-01-20 Bryan Thrall <bryan.thrall@flightsafety.com>
2734
2735 * source.cc (SourcePage::OnActivate): Command line takes precedence
2736 over last user selection.
2737
253585ba
MB
27382005-11-30 Max Bowsher <maxb1@ukf.net>
2739
2740 * res.rc (IDD_ROOT, IDD_LOCAL_DIR): Rearrange some controls a little,
2741 in response to suggestion from Carl Karsten.
2742
d60832c6
MB
27432005-11-30 Max Bowsher <maxb1@ukf.net>
2744
2745 * site.h, site.cc: Use std::string in preference to String.
2746 (site_list_type::init): Convert some painful raw C string work to
2747 STL std::string work. Stop totally ignoring the result of this
2748 calculation, implementing the (somewhat weird) sort order for sites
2749 that was apparently indented for ages.
2750
3d3c6047
IP
27512005-10-14 Igor Pechtchanski <pechtcha@cs.nyu.edu>
2752
2753 * io_stream.cc (url_scheme_not_registered): New macro.
2754 (io_stream::open): Better log message on error.
2755 (io_stream::mkpath_p,io_stream::remove,io_stream::mklink): Ditto.
2756 (io_stream::move,io_stream::exists): Ditto.
2757
b059e20b
IP
27582005-10-13 Igor Pechtchanski <pechtcha@cs.nyu.edu>
2759
2760 * site.cc (get_site_list): Default to empty mirror list if
2761 server unavailable and none cached, to allow using preferred
2762 mirrors anyway.
2763
82573872
IP
27642005-09-29 Igor Pechtchanski <pechtcha@cs.nyu.edu>
2765
2766 * package_db.cc (packagedb::packagedb): Remember missing package
2767 database file.
2768
9237e1bb
IP
27692005-09-29 Igor Pechtchanski <pechtcha@cs.nyu.edu>
2770
2771 * site.cc (get_site_list): Store mirror list locally.
2772 Use local copy if unable to download.
2773
a8be3f13
IP
27742005-09-27 Igor Pechtchanski <pechtcha@cs.nyu.edu>
2775
2776 * io_stream_cygfile.cc (io_stream_cygfile::io_stream_cygfile):
2777 Better log message on error.
2778
2a8125be
IP
27792005-09-27 Igor Pechtchanski <pechtcha@cs.nyu.edu>
2780
bd3a38c7 2781 * script.cc (Script::isAScript): Fix string comparison.
2a8125be 2782
01b9378a
IP
27832005-09-27 Igor Pechtchanski <pechtcha@cs.nyu.edu>
2784
2785 * nio-ftp.cc (NetIO_FTP::NetIO_FTP): Reconnect on FTP timeout.
2786
65ce9baf
BD
27872005-09-11 Masayuki FUJII <boochang@m4.kcn.ne.jp>
2788
2789 * package_meta.cc (packagemeta::ScanDownloadedFiles): Don't use an
2790 invalid iterator. Fix whitespace.
2791
3f6926b1
BD
27922005-09-09 Brian Dessent <brian@dessent.net>
2793
2794 * CHANGES: Document recent updates.
2795 * choose.cc (ChooserPage::OnInit): Add new tooltip.
2796 * res.rc (IDD_CHOOSE): Remove 'administrative' from description.
2797 (IDS_HIDEOBS_TOOLTIP): Add new string for tooltip.
2798 * resource.h (IDS_HIDEOBS_TOOLTIP): Define.
2799 * window.cc (Window::ActivateTooltips): Fix whitespace. Set tooltip
2800 delay to 30 seconds.
2801
9dda7744
BD
28022005-09-09 Igor Pechtchanski <pechtcha@cs.nyu.edu>
2803
2804 * PickView.cc (PickView::paint): Set background mode to transparent.
2805 * PickCategoryLine.cc (PickCategoryLine::paint): Use bitwise AND to
2806 blit bitmaps.
2807 * PickPackageLine.cc (PickPackageLine::paint): Ditto.
2808
534c25cc
BD
28092005-09-01 Brian Dessent <brian@dessent.net>
2810
2811 * package_meta.cc (packagemeta::uninstall): Remove support for
2812 undocumented and dangerous postremove script.
2813
28142005-09-01 Igor Pechtchanski <pechtcha@cs.nyu.edu>
2815
2816 * script.cc (run): Change to return the exit code or negative error.
2817 (Script::run): Ditto.
2818 (try_run_script): Receive both filename and extension and run only
2819 one script. Also return the exit code.
2820 * script.h (try_run_script): Change signature.
2821 (Script::run): Ditto.
2822 * postinstall.cc (RunScript::operator()): Change to return the exit
2823 code or negative error.
2824 * install.cc (Installer::preremoveOne): Pass extension to
2825 try_run_script().
2826
28272005-09-01 Eric Blake <ebb9@byu.net>
2828
2829 * script.cc (shells): Use /bin/bash, not sh, to allow upgrades to
2830 /bin/sh.
2831
0ac305ec
BD
28322005-09-01 Igor Pechtchanski <pechtcha@cs.nyu.edu>
2833
2834 * PickView.h (PickView::size_col): New instance variable.
2835 * PickView.cc (pkg_headers, cat_headers): Add size column.
2836 (PickView::set_headers): Initialize size_col.
2837 (PickView::init_headers): Include width of size column.
2838 * PickPackageLine.cc (PickPackageLine::paint): Handle size_col.
2839 * String++.cc (format_1000s): New function.
2840 * String++.h (format_1000s): Declare new function.
2841
aa62e0f3
BD
28422005-09-01 Brian Dessent <brian@dessent.net>
2843
2844 * Makefile.am (BASECXXFLAGS): Add -Wno-uninitialized to work around
2845 spurious warnings with gcc 3.4.4.
2846
687dd890
BD
28472005-05-22 Brian Dessent <brian@dessent.net>
2848
2849 * res.rc (IDD_CHOOSE): Change description to include administrative
2850 packages in addition to obsolete.
2851
82306ac2
BD
28522005-05-21 Brian Dessent <brian@dessent.net>
2853
2854 * prereq.cc: New file.
2855 * prereq.h: Ditto.
2856 * tree-minus.bmp: Ditto.
2857 * tree-plus.bmp: Ditto.
2858 * Makefile.am: Add prereq.cc and prereq.h to build.
2859 * PickCategoryLine.cc (PickCategoryLine::paint): Add new parameter and
2860 refactor. Use bitmap for '+' and '-' indicators. Draw package lines
2861 column-wise for better drawing efficiency.
2862 (PickCategoryLine::click): Use previously calculated x value.
2863 * PickCategoryLine.h (PickCategoryLine::paint): Update prototype. Add
2864 'spin_x' member.
2865 * PickLine.h (PickLine:paint): Update prototype.
2866 * PickPackageLine.cc (PickPackageLine::DrawCheck): Remove.
2867 (PickPackageLine::DrawIcon): New function.
2868 (PickPackageLine::paint): Add parameter. Refactor completely for more
2869 efficient painting.
2870 * PickPackageLine.h (PickPackageLine::DrawIcon): Add prototype.
2871 (PickPackageLine::paint): Update prototype.
2872 (PickPackageLine::DrawCheck): Remove.
ca2b7505 2873 * PickView.cc (pkg_headers): Remove unused 'slen' field, add new
82306ac2 2874 'needs_clip' field to signify if clipping is necessary for this column.
ca2b7505 2875 (PickView::note_width): Fold long line. Refactor slightly for
82306ac2
BD
2876 simplicity.
2877 (PickView::set_view_mode): Remove.
2878 (PickView::cycleViewMode): New function.
2879 (PickView::setViewMode): Refactor completely. Incorporate functionality
2880 of clear_view() here instead. Simplify package selection into a single
2881 'for' loop rather than repeating code for each type.
2882 (isObsolete): New function, with second overloaded version.
2883 (PickView::setObsolete): New function.
2884 (PickView::insert_pkg): Do not show obsolete packages. Move
2885 declaration of 'db' lower. Fix whitespace.
2886 (PickView::insert_category): Do not show obsolete packages.
ca2b7505 2887 (PickView::clear_view): Remove. Moved logic into 'setViewMode'.
82306ac2
BD
2888 (PickView::scroll): Add additional parameter 'howmany' with default
2889 value of 1. Scroll by 'howmany' lines for SB_LINEDOWN and SB_LINEUP.
2890 (NUM_CATEGORY_COL_WIDTH): Define.
2891 (PickView::init_headers): Fix whitespace. Add comments. Ignore
2892 obsolete packages in width calculations. Add functionality to size
2893 'Category' column so that at least NUM_CATEGORY_COL_WIDTH categories
2894 are displayed for every package. Ensure that 'new_col' takes into
2895 account all possible labels.
2896 (PickView::PickView): Initialize showObsolete to false.
2897 (PickView::init): Remove unused bitmap bm_rtarrow. Add new bitmaps
2898 bm_treeplus and bm_treeminus. Use a macro for better readability.
2899 Fix whitespace formatting. Remove header computation from here, call
2900 refresh() instead.
2901 (PickView::registerWindowClass): Remove unnecessary background brush.
2902 (PickView::WindowProc): Add support for WM_MOUSEWHEEL message
2903 processing. Fix indentation. Reformat for readability.
2904 (PickView::paint): Get the update region before calling BeginPaint.
2905 Fill the update region with the default colors. Do not do clipping
2906 here. Pass update region to the PickLine paint function instead.
2907 Free the update region when finished.
2908 (PickView::Create): Fix indentation.
2909 (PickView::defaultTrust): Ditto.
2910 (PickView::refresh): Add column recalculation logic here.
2911 * PickView.h: Fix indentation.
2912 (RTARROW_WIDTH): Remove unused define.
2913 (NEW_COL_SIZE_SLOP): Ditto.
2914 (TREE_INDENT): Define.
2915 (PickView::get_view_mode): Remove.
2916 (PickView::set_view_mode): Rename to setViewMode for consistency.
2917 (PickView::cycleViewMode): Add new function.
2918 (PickView::setObsolete): Ditto.
2919 (PickView::clear_view): Remove.
2920 (PickView::bm_treeplus): Define new member.
2921 (PickView::bm_treeminus): Ditto.
2922 (PickView::scroll): Add parameter.
2923 (PickView::Header::slen): Remove unused member.
2924 (PickView::Header::needs_clip): Define new member.
2925 (PickView::showObsolete): Ditto.
2926 (isObsolete): Add prototype, and for overloaded version as well.
2927 * choose.cc: Add include.
2928 (ChooserControlsInfo): Allow new checkbox to be resized.
2929 (ChooserPage::OnInit): Start dialog with 'Hide obsolete' checked.
2930 (ChooserPage::OnNext): Call the dependency checker, act accordingly.
2931 (ChooserPage::changeTrust): Notify dependency checker of current trust
2932 level when it changes.
2933 (ChooserPage::OnMessageCmd): Just call cycleViewMode instead when
2934 changing the view. Update the chooser when the user toggles the
2935 'hide obsolete' checkbox.
2936 (ChooserPage::OnMouseWheel): New function. Pass mouse wheel message
2937 on to chooser.
2938 * choose.h (OnMouseWheel): Add prototype.
2939 * main.cc: Add include.
2940 (main): Define and initialize the PrereqPage object. Add it into
2941 the property sheet list.
2942 * PropPage.cc (PropertyPage::DialogProc): Add support for WM_MOUSEWHEEL
2943 message processing in derived classes.
2944 (PropertyPage::OnMouseWheel): New function.
2945 * PropPage.h (PropertyPage::OnMouseWheel): Add prototype.
2946 * res.rc (IDD_LOCAL_DIR): Shorten edit box so that pushbutton is not
2947 crowded.
2948 (IDD_SITE): Provide static text with an ID so that it can be resized
2949 properly. Move pushbutton slightly to right so that it doesn't crowd
2950 edit box.
2951 (IDD_SPLASH): Change copyright displayed on spash screen to be generic
2952 since the actual list of contributors is long.
2953 (IDD_CHOOSE): Add checkbox. Resize other controls to accomodate.
2954 (IDD_PREREQ): New dialog.
2955 (SPIN): Delete duplicated bitmap resource.
2956 (IDB_RTARROW): Remove unused bitmap resource.
2957 (IDB_TREE_PLUS): Add.
2958 (IDB_TREE_MINUS): Ditto.
2959 (IDS_TRUSTPREV_TOOLTIP): Revise wording to be more concise.
2960 (IDS_TRUSTCURR_TOOLTIP): Ditto.
2961 (IDS_TRUSTEXP_TOOLTIP): Ditto.
2962 (IDS_VIEWBUTTON_TOOLTIP): Ditto.
2963 * resource.h (IDD_PREREQ): Define.
2964 (IDB_RTARROW): Remove.
2965 (IDB_TREE_PLUS): Add, and renumber.
2966 (IDB_TREE_MINUS): Ditto.
2967 (IDC_SITE_USERURL): Define.
2968 (IDC_CHOOSE_HIDE): Ditto.
2969 (IDC_PREREQ_TEXT): Ditto.
2970 (IDC_PREREQ_EDIT): Ditto.
2971 (IDC_PREREQ_CHECK): Ditto.
2972 * site.cc (SiteControlsInfo): Ensure that 'User URL' static text is
2973 properly resized.
2974
846e099d
MB
29752005-05-14 Max Bowsher <maxb@ukf.net>
2976
2977 "Type" field of packageversions was not even being filled in. Fix.
2978
2979 * cygpackage.h, cygpackage.cc (cygpackage::createInstance):
2980 Make "type" a mandatory parameter of the constructor.
2981 * IniDBBuilderPackage.cc: Adjust callers.
2982
c1352375
MB
29832005-05-14 Bas van Gompel <patch-cygsup.buzz@bavag.tmfweb.nl>
2984
2985 Fix behaviour of hardlinks in source packages.
2986
2987 * archive.cc (archive::extract_file):
2988 Use prefixPath for link target on hardlinks.
2989
403f1027
MB
29902005-05-14 Max Bowsher <maxb@ukf.net>
2991
2992 Hopefully, solve the "preremove DLL dependency" bug, by running all
2993 preremove scripts before actually removing any files.
2994
ca2b7505 2995 * install.cc
403f1027
MB
2996 (Installer::preremoveOne): New method. Run preremove scripts here.
2997 (Installer::replaceOne): Remove method.
2998 (num_replacements): Remove variable.
2999 (do_install_thread): Significantly rewrite.
3000 * package_meta.cc (packagemeta::uninstall):
3001 Do not run preremove script here.
3002
f916c374
MB
30032005-05-14 Max Bowsher <maxb@ukf.net>
3004
3005 * download.cc (do_download_thread):
3006 Do not use packageversion::changeRequested().
3007 * package_version.cc (packageversion::Type):
3008 Implement declared but previously unimplemented method.
3009 (packageversion::changeRequested, _packageversion::changeRequested):
3010 Remove.
3011 * package_version.h
3012 (packageversion::changeRequested, _packageversion::changeRequested):
3013 Remove.
3014 * install.cc (Installer::replaceOne): Simplify, return void, not int.
3015 (installOneSource): Rename to...
403f1027 3016 (installOne): ...this. Change arguments and return type. Refactor.
f916c374
MB
3017 (install_one): Remove.
3018 (do_install_thread): Tidying up.
3019
655310ed
MB
30202005-05-07 Max Bowsher <maxb@ukf.net>
3021
3022 * download.cc (validateCachedPackage): Remove all MD5 checking code.
3023 It is not acceptable to check MD5 sums as part of simply answering
3024 whether a package exists in the local cache or not. It is too slow.
3025 MD5 sums always have been - and will continue to be - checked at
3026 install time.
3027 (NoMD5Option): Remove this option, as the code it controls has been
3028 removed.
3029
61a9e487
MB
30302005-05-07 Max Bowsher <maxb@ukf.net>
3031
3032 * install.cc (md5_one): Make the MD5 checking done at install time
3033 display a progess GUI, as the MD5 checking done at other times does.
3034
4c90a532
MB
30352005-05-07 Max Bowsher <maxb@ukf.net>
3036
3037 * resource.h, res.rc: Followup to recent de-MSVC-ification of
3038 resource.h, by removing a lot from res.rc, and the last few bits
3039 from resource.h.
3040
9a8a04fc
BD
30412005-05-05 Brian Dessent <brian@dessent.net>
3042
37f49caf
BD
3043 * choose.cc (ChooserPage::OnInit): Initialize tooltips for this
3044 dialog.
3045
3046 * proppage.h (PropertyPage::makeClickable): Update prototype to
3047 reflect same argument name as function.
3048
3049 * proppage.cc (PropertyPage::DialogProc): Remove redundant 'break'
ca2b7505 3050 statements that follow 'return's. Add missing braces to case
37f49caf
BD
3051 statements. Call handler for TTN_GETDISPINFO.
3052
3053 * res.rc (IDS_TRUSTKEEP_TOOLTIP): Add new STRINGTABLE entry for
3054 tooltip text.
3055 (IDS_TRUSTPREV_TOOLTIP): Ditto.
ca2b7505 3056 (IDS_TRUSTCURR_TOOLTIP): Ditto.
37f49caf
BD
3057 (IDS_TRUSTEXP_TOOLTIP): Ditto.
3058 (IDS_TRUSTPREV_TOOLTIP): Ditto.
3059 (IDS_VIEWBUTTON_TOOLTIP): Ditto.
3060
3061 * resource.h: Likewise, add identifiers for tooltip resources.
3062
3063 * window.h: Add includes.
3064 (Window::TooltipHandle): Add new private data structure.
3065 (Window::TooltipStrings): Ditto.
3066 (Window::ActivateTooltips): Define new function to support tooltip
3067 functionality.
3068 (Window::SetTooltipState): Ditto.
3069 (Window::AddTooltip): Ditto.
322281d3 3070 (Window::TooltipNotificationHandler): Ditto.
37f49caf
BD
3071
3072 * window.cc (Window::Window): Initialize handle to NULL.
3073 (Window::~Window): Call DestroyWindow on tooltip control if it was
3074 activated.
3075 (Window::ActivateTooltips): New function to activate the tooltip
3076 control.
3077 (Window::SetTooltipState): New function to allow toggling of
3078 tooltips.
3079 (Window::AddTooltip): New function that adds a tooltip to a given
3080 control in a given window. Also implement overloaded versions that
3081 provide simpler interface and the ability to use a string resource.
3082 (Window::TooltipNotificationHandler): New function to handle
3083 TTN_GETDISPINFO notification messages.
3084
30852005-05-05 Brian Dessent <brian@dessent.net>
4c90a532 3086
9a8a04fc
BD
3087 * resource.h: Reorganize. Group by type, and give each its own
3088 range of IDs. Regenerate IDs accordingly.
3089 (IDD_CHOOSER): Remove obsolete and unused symbol.
3090
9e6e3c68
BD
30912005-05-05 Brian Dessent <brian@dessent.net>
3092
3093 * root.h (class RootPage): Add missing virtual to OnMessageCmd.
3094
746fff8d
BD
30952005-05-05 Brian Dessent <brian@dessent.net>
3096
3097 * root.cc (dialog_cmd): Remove. Use OnMessageCmd instead.
3098 (RootPage::Create): Accomodate above change.
3099
3100 * root.h (class RootPage): Add prototype for OnMessageCmd.
3101
3102 * res.rc (IDD_ROOT): Fix broken button groups. Correct the order of
ca2b7505 3103 the controls and use of WS_GROUP so that the radio buttons act
746fff8d
BD
3104 correctly.
3105
d2a3615c
MB
31062005-05-05 Max Bowsher <maxb@ukf.net>
3107
3108 Bulk rename of String++ member cstr_oneuse () to c_str () for
3109 similarity to std::string.
3110
3111 * Exception.cc
3112 * IniDBBuilderPackage.cc
3113 * IniParseFindVisitor.cc
3114 * LogFile.cc
3115 * PickCategoryLine.cc
3116 * PickPackageLine.cc
3117 * PickView.cc
3118 * String++.cc
3119 * String++.h
3120 * archive.cc
3121 * cygpackage.cc
3122 * desktop.cc
3123 * dialog.cc
3124 * diskfull.cc
3125 * download.cc
3126 * filemanip.cc
3127 * find.cc
3128 * geturl.cc
3129 * ini.cc
3130 * install.cc
3131 * io_stream.cc
3132 * io_stream_cygfile.cc
3133 * io_stream_file.cc
3134 * localdir.cc
3135 * mount.cc
3136 * nio-http.cc
3137 * package_db.cc
3138 * package_meta.cc
3139 * package_source.h
3140 * postinstall.cc
3141 * proppage.cc
3142 * root.cc
3143 * script.cc
3144 * site.cc
3145 * splash.cc
3146 * threebar.cc
3147 * window.cc
3148
3a8630fd
MB
31492005-05-05 Max Bowsher <maxb@ukf.net>
3150
3151 Some String++ refactoring, setting out in the general direction of
3152 eventually just using the STL std::string, not our own class.
3153
3154 * String++.cc (String::cstr, String::cstr () const): Remove.
3155 (new_cstr_char_array): New function.
3156 * String++.h: Sync with above.
3157 Remove irrelevant "class io_stream;" declaration.
3158
3159 * cygpackage.h: Add "class io_stream;" declaration, now no longer
3160 being supplied by side-effect.
3161
3162 * filemanip.cc: Remove unneeded includes, add "using namespace std;".
3163 (parse_filename): Exchange some awkward pointer manipulation for
3164 std::string usage. Use new_cstr_char_array ().
3165 * filemanip.h: Sync with above.
3166 (fileparse): Improve style of declaration.
3167
3168 * io_stream_cygfile.cc (io_stream_cygfile::normalise):
3169 Use new_cstr_char_array ().
3170 * site.cc (site_list_type::init, get_site_list): Ditto.
3171
daab12c7
BD
31722005-05-05 Brian Dessent <brian@dessent.net>
3173
03e84729
MB
3174 * ControlAdjuster.h (enum ControlPosition): Declare new resizing
3175 methods CP_STRETCH_LEFTHALF and CP_STRETCH_RIGHTHALF, and their
3176 TOP/BOTTOM aliases.
daab12c7 3177
03e84729
MB
3178 * ControlAdjuster.cc (ControlAdjuster::ControlInfo::adjust):
3179 Implement CP_STRETCH_LEFTHALF and CP_STRETCH_RIGHTHALF, which are
3180 designed to resize elements in a two-column layout.
daab12c7 3181
03e84729
MB
3182 * localdir.h (class LocalDirPage): Remove constructor implementation
3183 from here...
daab12c7 3184
03e84729
MB
3185 * localdir.cc (LocalDirPage::LocalDirPage): ...to here, and call
3186 AddControlsInfo on initialization.
3187 (static LocaldirControlsInfo): Add. Define sizing rules for dialog
daab12c7
BD
3188 elements.
3189
03e84729
MB
3190 * proppage.h: Add includes.
3191 (PropertyPage::ClickableURL):
3192 Declare new storage type for internal use by class.
3193 (PropertyPage::urls): Likewise.
3194 (PropertyPage::urlWinProc): Add declaration.
daab12c7
BD
3195 (PropertyPage::makeClickable): Likewise.
3196
03e84729
MB
3197 * proppage.cc: Add includes.
3198 (PropertyPage::DialogProc): Implement handler for WM_CTLCOLORSTATIC
3199 message. Supports static controls that have been turned into
3200 clickable hyperlinks.
3201 (static PropertyPage::urls): Declare.
3202 (PropertyPage::makeClickable): Implement new member function that
3203 provides user interface for making text into clickable URLs.
3204 (PropertyPage::urlWinProc): Implement new private member function used
3205 as a windowproc for subclassing a static control.
3206
3207 * resource.h (IDC_SPLASH_URL, IDC_FILEMODES_LINK, IDC_ROOTDIR_GRP,
3208 IDC_INSTALLFOR_GRP, IDC_ALLUSERS_TEXT, IDC_JUSTME_TEXT, IDC_MODE_GRP,
3209 IDC_MODE_TEXT, IDC_MODE_BIN, IDC_LOCALDIR_GRP, IDC_SPLASH_TEXT,
3210 IDC_SPLASH_ICON, IDC_SPLASH_COPYR): Add. Replaces anonymous
daab12c7
BD
3211 IDC_STATIC ids, so that controls can be referenced by the resizer.
3212
03e84729
MB
3213 * res.rc (IDD_LOCAL_DIR): Rearrange controls to match top-down order
3214 in the dialog. Fold long lines. Replace anonymous IDC_STATIC ids.
3215 (IDD_ROOT): Reorder in same manner. Replace anonymous IDC_STATIC ids.
3216 Add descriptive text of each option, and hyperlink for more
3217 information. Mark suggested choice as "(RECOMMENDED)". Swap order of
3218 'unix'/'dos' radio buttons so that recommended choice is first in both
3219 columns.
3220 (IDD_SPLASH): Reorder elements to match top-down order of dialog, fold
3221 long lines. Add descriptive paragraph, remove anonymous ids. Update
3222 copyright text, replace sources.redhat.com with cygwin.com.
daab12c7 3223
03e84729 3224 * root.h (class RootPage): Remove constructor implementation from
daab12c7
BD
3225 here...
3226
03e84729
MB
3227 * root.cc: ...to here, and call AddControlInfo.
3228 (static RootControlsInfo): Add. Populate with resizing data.
daab12c7
BD
3229 (RootPage::OnInit): Make text a clickable hyperlink.
3230
03e84729 3231 * splash.h (class SplashPage): Likewise, move constructor from
daab12c7
BD
3232 here...
3233
03e84729
MB
3234 * splash.cc: ...to here. Call AddControlInfo.
3235 (static SplashControlsInfo): Add and populate.
3236 (SplashPage::Create): Make link on splash page a clickable hyperlink.
daab12c7 3237
03e84729
MB
3238 * window.h: Add include.
3239 (class Window): Store allocated fonts with a vector instead of fixed
3240 array. Change indentation of setParent to be consistent.
daab12c7 3241
03e84729
MB
3242 * window.cc (Window::Window): Remove FontCounter.
3243 (Window::~Window): Likewise. Iterate over vector of fonts instead.
3244 (Window::SetDlgItemFont): Use vector.
daab12c7 3245
042d83f9
MB
32462005-05-05 Max Bowsher <maxb@ukf.net>
3247
3248 * Makefile.am (EXTRA_DIST, inilint_SOURCES):
3249 Sync with several recent changes.
3250
a38fde1a
BD
32512005-05-05 Brian Dessent <brian@dessent.net>
3252
03e84729 3253 * res.rc: (CREATEPROCESS_MANIFEST_RESOURCE_ID): Include section
a38fde1a
BD
3254 comment.
3255
dd267526
BD
32562005-05-05 Brian Dessent <brian@dessent.net>
3257
3258 * res.rc: (IDC_CHOOSE): Widen 'view' button by 6px horizontally and
3259 4px vertically. Adjust other controls to accomodate.
3260 (CREATEPROCESS_MANIFEST_RESOURCE_ID): Define so that manifest is
3261 included in the binary.
3262
3263 * setup.exe.manifest: New file. Results in common controls with
3264 themed appearance on modern versions of Windows.
3265
83524e5b
MB
32662005-05-05 Brian Dessent <brian@dessent.net>
3267
03e84729 3268 * main.cc (WinMain): Change conditional to avoid spurious error
83524e5b 3269 message on success. Include reason for failure in log message.
96f50f64 3270
071f7af3
MB
32712005-05-04 Max Bowsher <maxb@ukf.net>
3272
3273 * state.cc, state.h (net_method, net_proxy_host, net_proxy_port,)
3274 (net_user, net_passwd, net_proxy_user, net_proxy_passwd,)
3275 Inet_ftp_user, net_ftp_passwd):
3276 Move these global variables to be static variables of the NetIO class.
3277
3278 * netio.h, netio.cc (net_method, net_proxy_host, net_proxy_port,)
3279 (net_user, net_passwd, net_proxy_user, net_proxy_passwd,)
3280 net_ftp_user, net_ftp_passwd):
3281 As above.
3282
3283 * ConnectionSetting.cc, net.cc:
3284 Change include, refer to variables in new location.
3285
0a49fe44
MB
32862005-05-04 Max Bowsher <maxb@ukf.net>
3287
3288 * PickLine.cc: Remove file - redundant.
3289 * Makefile.am (setup_SOURCES): Adjust.
3290
7f3324d2
MB
32912005-05-04 Max Bowsher <maxb@ukf.net>
3292
3293 * package_version.h (packageversion::set_requirements):
3294 Remove deftrust argument default value.
3295
32962005-05-04 Max Bowsher <maxb@ukf.net>
2ef95e81
MB
3297
3298 * package_version.cc (DependencyProcessor): Remove trivial class.
3299 (select, processOneDependency): Do not use DependencyProcessor, just
3300 pass parameters normally.
3301
d20a2e29
MB
33022005-05-04 Brian Dessent <brian@dessent.net>
3303
3304 Fix bug #820: Clicking Curr, etc., causes some dependencies to not
3305 be installed.
3306
3307 * choose.cc (ChooserPage::changeTrust):
3308 Add a missing "packagedb.markUnVisited ()".
3309
9bd063e0
MB
33102005-05-03 Max Bowsher <maxb@ukf.net>
3311
3312 * PickCategoryLine.cc (PickCategoryLine::click):
3313 * PickPackageLine.cc (PickPackageLine::click):
3314 Abandon use of trivial packagemeta::PrepareForVisit() wrapper.
3315
3316 * package_meta.h (packagemeta::PrepareForVisit): Remove.
3317 * package_meta.cc (packagemeta::PrepareForVisit): Remove.
3318
97b50ad7
MB
33192005-05-03 Max Bowsher <maxb@ukf.net>
3320
3321 * choose.h (ChooserPage::ifChecked): Remove.
3322 (ChooserPage::changeTrust): Convert from template to ordinary function.
3323 * choose.cc (ChooserPage::changeTrust): As above, plus avoid the use
3324 of custom class SetRequirement, when bind2nd(mem_fun(...),...) can
3325 achieve the same effect.
3326 * package_meta.h (SetRequirement): Remove, now unused.
3327
98b84622
MB
33282005-05-03 Max Bowsher <maxb@ukf.net>
3329
3330 * package_meta.h (packagemeta::set_requirements):
3331 Remove default argument which seems inappropriate.
3332 * PickPackageLine.cc (PickPackageLine::click):
3333 Make an argument explicit, and not that it seems like the wrong value.
3334
7c86285f
MB
33352005-05-03 Brian Dessent <brian@dessent.net>
3336
3337 Fix part of bug #853 - proxy port not remembered.
3338
3339 * net.cc (doing_loading): New static boolean.
3340 (load_dialog): Use the boolean to prevent save_dialog() from taking
3341 action due to field changes due to initialization.
3342 (save_dialog): Check the boolean and respond appropriately.
3343
9ad9a0b0
MB
33442005-04-19 Max Bowsher <maxb@ukf.net>
3345
3346 * postinstall.cc (RunFindVisitor::visitFile): Fix crash on
3347 encountering a postinstall script with a name of 4 characters or less.
3348 Bug introduced on 2004-12-25.
3349
946198be
MB
33502005-04-05 Max Bowsher <maxb@ukf.net>
3351
3352 The Big Cleanup: Phase "rfc1738"
3353
3354 * rfc1738.cc, rfc1738.h: Delete.
3355 * csu_util/rfc1738.cc: Reimport latest version from upstream source.
3356 Make thread-safe. Rewrite C++ wrapper in terms of std::string.
3357 Document the divergences from the upstream source.
3358 * csu_util/rfc1738.h: Recreate for the std::string version of the
3359 C++ wrapper.
3360
3361 * Makefile.am (setup_SOURCES): Sync with added/removed files.
3362 * IniParseFindVisitor.cc: Modify #includes.
3363 (IniParseFindVisitor::visitFile): Change function name, as the new
3364 C++ wrapper does not contain an irregularity that the old one did.
3365 * download.cc: Modify #includes.
3366 * ini.cc: Modify #includes.
3367
e76de0f5
MB
33682005-04-05 Max Bowsher <maxb@ukf.net>
3369
3370 Remove setup's internal compression libraries, instead relying on the
3371 mingw-foo packages which have been part of the Cygwin net distribution
3372 for some time now. At the same time, reorganize the README file to
3373 inform about the change, and make some additional tidy-ups there whilst
3374 working there.
3375
3376 * GUIDELINES: Remove, contents transferred to README.
3377 * README: Add build instructions. Delete unconfirmed and fixed bugs
3378 sections. Incorporate the former contents of GUIDELINES.
3379
3380 * bz2lib/: Remove.
3381 * zlib/: Remove.
ca2b7505 3382 * Makefile.am (DIST_SUBDIRS, SUBDIRS):
e76de0f5
MB
3383 * configure.in: Remove AC_CONFIG_SUBDIRS for removed subdirs.
3384 * compress_bz.h: Remove complex _WIN32 preprocessor conditional.
3385 * compress_gz.h: Fix #include file name.
3386 * archive_tar_file.cc: Remove unused #include.
3387 * install.cc: Remove unused #include.
3388
069a187a
MB
33892005-01-27 Max Bowsher <maxb@ukf.net>
3390
3391 Set CYGWIN=nontsec, for postinstall scripts.
3392
3393 * main.cc (main): putenv("CYGWIN=nontsec").
3394
b4cf6208
MB
33952005-01-27 Bas van Gompel <patch-cygsup.buzz@bavag.tmfweb.nl>
3396
3397 Fix corrupt display of ini parse percentage in log file.
3398
3399 * ini.cc (GuiParseFeedback): Use a sensible data type for lastpct.
3400
eff7a094
MB
34012004-12-29 Max Bowsher <maxb@ukf.net>
3402
3403 * site.cc (get_site_list): Filter the incoming mirrors list to contain
3404 only URL schemes that we can read.
3405
2c539780
MB
34062004-12-28 Max Bowsher <maxb@ukf.net>
3407
3408 The Big Cleanup: Phase "hash"
3409
3410 * hash.cc, hash.h: Delete.
3411 * Makefile.am (setup_SOURCES): Sync with deleted files.
3412
3413 * package_mets: Modify includes.
3414 (standard_dirs): Remove.
3415 (hash::add_subdirs): Remove.
3416 (packagemeta::uninstall): Re-implement using STL set instead of
3417 homebrew hash.
3418
4abaa9f9
MB
34192004-12-28 Max Bowsher <maxb@ukf.net>
3420
3421 * String++.h (operator std::string): Take care to never do
3422 std::string((char*)NULL) - it causes a hang!
3423
a77b6167
MB
34242004-12-27 Max Bowsher <maxb@ukf.net>
3425
3426 The Big Cleanup: Phase "log"
3427
3428 * log.cc, log.h: Delete old C-style compatibility wrapper around the
3429 logging subsystem.
3430 * Makefile.am (setup_SOURCES): Sync with deleted files.
3431
3432 * AntiVirus.cc, archive_tar_file.cc, ini.cc, install.cc,
3433 * io_stream_cygfile.cc, localdir.cc, msg.cc, net.cc, netio.cc,
3434 * netio.h, nio-ftp.cc, nio-ftp.h, root.cc, source.cc:
3435 Throughout, refine includes, and update code using the old
3436 compatibility wrapper to C++ streams style code.
3437
b16e07fc
MB
34382004-12-27 Max Bowsher <maxb@ukf.net>
3439
3440 * compress.cc: Refine includes. Remove placeholder function
3441 definitions. Make destructor an empty function.
3442 * compress.h: Refine includes. Make placeholder functions pure
3443 virtual. Add missing const on buffer argument to write function,
3444 to match derived classes.
3445 * compress_bz.cc, compress_gz.cc: Refine includes. Throw exception,
3446 rather than logging and returning an error, when an unimplemented
3447 function is called.
3448 * compress_bz.h, compress_gz.h: Refine includes.
3449
2b734ec7
MB
34502004-12-26 Max Bowsher <maxb@ukf.net>
3451
3452 The Big Cleanup: Phase "version"
3453
3454 * String++.h (operator std::string): Add.
3455 * desktop.cc, fromcwd.cc: Remove irrelevant include.
3456
3457 * version.cc, version.h: Delete, replacing all functionality in new
3458 files.
3459
3460 * setup_version.h: Add, taking over declaration of generated version
3461 symbol functionality.
3462
3463 * Makefile.am (setup_SOURCES): Sync with new/deleted files.
3464 (setup_version.c): Rename the symbol 'version' to 'setup_version'.
3465 * main.cc: Modify includes.
3466 (main): Adapt to setup_version rename.
3467 * splash.cc: Modify includes.
3468 (SplashPage::OnInit): Adapt to setup_version rename.
3469
3470 * csu_util/version_compare.cc, csu_util/version_compare.h: Add,
3471 containing a completely rewritten replacement for canonical_version().
3472
3473 * IniDBBuilderPackage.cc: Modify includes.
3474 (IniDBBuilderPackage::buildVersion): Use new version_compare API.
3475 * ini.cc: Modify includes.
3476 (setup_version): Rename...
3477 (ini_setup_version): ...to this.
3478 (do_local_ini, do_remote_ini): Adapt to above change.
3479 (do_ini_thread): Adapt to above change. Use new version_compare API.
3480
0f45aabe
MB
34812004-12-25 Max Bowsher <maxb@ukf.net>
3482
3483 * install.cc (Installer::installOneSource): Remove a stray "break;"
3484 left over from the switch-case -> if-else conversion in the previous
3485 change.
3486
4875ac88
MB
34872004-12-25 Max Bowsher <maxb@ukf.net>
3488
3489 The Big Cleanup: Phase "win32"
3490
3491 * win32.h: Major overhaul. Document why we use _WIN32_IE. Move out
3492 fragment dealing with alloca() to the single file in which it is used.
3493 Remove fragment dealing with _MAX_PATH, and convert all uses of it
3494 elsewhere to MAX_PATH. Remove random include of <stdarg.h>. Remove
3495 NOCOMATTRIBUTE, as setup contains no code which it affects. Remove
3496 includes of <wininet.h> and <windowsx.h> - see later in this log.
3497 (IsWindowsNT): New inline function, a much simpler implementation of
3498 Win32::OS().
3499
3500 * win32.cc: Delete.
3501
3502 * Makefile.am (setup_SOURCES): Remove "win32.cc".
3503
3504 * AntiVirus.cc (detect), PickPackageLine.cc (PickPackageLine::paint),
3505 * install.c (Installer::installOneSource):
3506 Use IsWindowsNT(), not Win32::OS().
3507 * main.cc (main): Use IsWindowsNT(), not locally defined iswinnt.
3508
3509 * PickView.cc (PickView::WindowProc), netio.cc (auth_proc),
3510 * proppage.cc (PropertyPage::DialogProc):
3511 Avoid using obfuscating macros from <windowsx.h>.
3512
3513 * archive.cc: Include or #define alloca() in the only file in which
3514 it is used.
3515
3516 * nio-ie5.h: Include <wininet.h> here, where it is actually needed,
3517 rather than in "win32.h" which is included almost everywhere.
3518
3519 * archive_tar.cc, archive_tar.h, cygpackage.cc, cygpackage.h,
3520 * desktop.cc, find.cc, install.cc, main.cc, mklink2.c, mount.cc,
3521 * script.cc: Use MAX_PATH, not _MAX_PATH.
3522
f4a981ab
MB
35232004-12-25 Max Bowsher <maxb@ukf.net>
3524
3525 Remove some overcomplications.
3526
3527 * Makefile.am (setup_SOURCES): Remove FilterVisitor.{cc,h}.
3528 * FilterVisitor.cc, FilterVisitor.h: Delete.
3529 * String++.cc (strmatch, String::matches): Remove.
3530 * String++.h (String::matches): Remove.
3531 * postinstall.cc: Do not include "FilterVisitor.h".
3532 (RunFindVisitor): Exclude items with the extension ".done".
3533 (do_postinstall_thread): Remove overcomplicated exclusion of items
3534 with the extension ".done".
3535
768d880e
MB
35362004-12-24 Max Bowsher <maxb@ukf.net>
3537
3538 * String++.cc, String++.h: Remove unused and incomplete code.
3539 * LogFile.cc (LogFile::log_save): Don't leak memory.
3540 * filemanip.cc, geturl.cc, root.cc, version.cc:
3541 Don't pointlessly create temporary copies strings.
3542
db165a9a
MB
35432004-12-23 Max Bowsher <maxb@ukf.net>
3544
3545 * choose.cc (ChooserPage::OnNext): Relegate some overly verbose
3546 logging to an #ifdef DEBUG section.
3547 * geturl.h (dismiss_url_status_dialog): Remove stale function
3548 declaration, for which there is no definition.
3549 * io_stream_cygfile.cc (io_stream_cygfile::io_stream_cygfile):
3550 Motivated by the recent unexplained hang bug, add some extra logging.
3551
0229b1d7
MB
35522004-11-22 Max Bowsher <maxb@ukf.net>
3553
3554 * MD5++.cc, MD5++.h: Remove this class.
3555 * csu_util/MD5Sum.cc, csu_util/MD5Sum.h: New more complete MD5 class.
3556 * Makefile.am (setup_SOURCES): Adjust to new files.
3557 * download.cc (validateCachedPackage): Simplify, using the new class.
3558 * install.cc (md5_one): Ditto.
3559 * package_source.h (packagesource::md5): Change to be an object of the
3560 new class.
3561
2c4261a8
MB
35622004-11-22 Max Bowsher <maxb@ukf.net>
3563
ba102d1c
MB
3564 * main.cc (main): Fix bug in one of the 2004-11-19 commits.
3565 Avoid referring to the theLog pointer before it is set.
2c4261a8 3566
9132ff16
MB
35672004-11-20 Max Bowsher <maxb@ukf.net>
3568
3569 * res.rc (IDD_SOURCE): Clarify the radio-button option descriptions.
3570 Re-layout the radio buttons.
3571
6beebaa3
MB
35722004-11-20 Max Bowsher <maxb@ukf.net>
3573
3574 Repair the broken detection of wrongly-sized package files.
3575
3576 * download.cc (validateCachedPackage): Make static, since not used
3577 elsewhere. Improve logging. Migrate file-size tests to here, alongside
3578 the MD5 tests.
3579 (check_for_cached): Remove broken testing of file-size, now covered by
3580 the above. Code cleanups.
3581
54ff37c8
MB
35822004-11-19 Max Bowsher <maxb@ukf.net>
3583
3584 * package_version.cc (dumpAndList): Make dependencies much more
3585 readable in full log output.
3586
4d7a6eeb
MB
35872004-11-19 Max Bowsher <maxb@ukf.net>
3588
3589 * proppage.cc (PropertyPage::DialogProc): Wrap in a TOPLEVEL_CATCH
3590 block, since allowing exceptions to unwind into the guts of Windows is
3591 quite disasterous.
3592
c66b9174
MB
35932004-11-19 Max Bowsher <maxb@ukf.net>
3594
3595 * main.cc (main): Move option parsing code earlier - it must execute
3596 before any significant object creations, which might test options in
3597 their initialization.
3598
82b64f8a
MB
35992004-11-19 Max Bowsher <maxb@ukf.net>
3600
3601 * main.cc (main): Remove some junk code - either commented out, or
3602 contained within unreachable preprocessor conditional sections.
3603
4fa49408
MB
36042004-11-19 Max Bowsher <maxb@ukf.net>
3605
3606 * install.cc (Installer::installOneSource): Avoid leaking the open
3607 file handles of every tarball that is installed.
3608
0e9a5c4f
MB
36092004-11-19 Max Bowsher <maxb@ukf.net>
3610
3611 * package_source.h (packagesource::Canonical, packagesource::Base)
3612 (packagesource::Filename): Add "const" specification to accessor
3613 methods.
3614
6b68e703
MB
36152004-11-18 Max Bowsher <maxb@ukf.net>
3616
3617 * archive.h (archive::~archive): Define a pure virtual destructor to
3618 enforce the abstract nature of this class.
3619 * archive.cc (archive::~archive): Pure virtual destructors require an
3620 implementation! Add one.
3621 * io_stream.h (io_stream::destroyed): Remove this severely
3622 brain-damaged implementation of a weakly-enforced abstract class.
3623 The pure virtual destructor was strongly enforcing the abstract nature
3624 anyway.
3625 * io_stream.cc (io_stream::~io_stream): Empty out horribly pointless
3626 code from the pure virtual destructor.
3627 * archive_tar.cc (archive_tar::~archive_tar): Remove all
3628 reference to the removed "destroyed" member.
3629 * archive_tar_file.cc (archive_tar_file::~archive_tar_file): Ditto.
3630 * compress_bz.cc (compress_bz::~compress_bz): Ditto.
3631 * compress_gz.cc (compress_gz::~compress_gz): Ditto.
3632 * io_stream_cygfile.cc (io_stream_cygfile::~io_stream_cygfile): Ditto.
3633 * io_stream_file.cc (io_stream_file::~io_stream_file): Ditto.
3634 * io_stream_memory.cc (io_stream_memory::~io_stream_memory): Ditto.
3635
51200ef2
MB
36362004-11-17 Max Bowsher <maxb@ukf.net>
3637
3638 * mount.cc (create_mount): Fix operator precedence error introduced in
3639 first 2004-11-11 commit - warned of by gcc 3.3.3 but not 3.4.1 !
3640
f5d45c3b
MB
36412004-11-13 Max Bowsher <maxb@ukf.net>
3642
3643 Miscellaneous cleanup.
3644
3645 * geturl.cc (getUrlToStream): Make static.
3646 * geturl.h (getUrlToStream): Remove declaration.
3647
3648 * geturl.cc, geturl.h, netio.cc, netio.h, nio-ftp.cc, nio-ftp.h,
3649 nio-http.cc, nio-http.h:
3650 Remove unused "allow_ftp_auth" flag throughout.
3651
f4d80c3f
MB
36522004-11-11 Max Bowsher <maxb@ukf.net>
3653
3654 * libmd5-rfc: New directory, to hold code imported from the libmd5-rfc
3655 project in a clearly delineated fashion.
3656 * libmd5-rfc/README: New file.
3657 * md5.c, md5.h: Delete...
3658 * libmd5-rfc/md5.c, libmd5-rfc/md5.h: ...and replace with pristine
3659 versions from upstream (only change is restoration of upstream CVS
3660 keyword expansions).
3661 * libmd5-rfc/md5main.c: New file.
3662 * Makefile.ami (setup_SOURCES): Edit file paths.
3663 * download.cc, install.cc: Edit include paths.
3664
68d49419
MB
36652004-11-11 Max Bowsher <maxb@ukf.net>
3666
3667 * dialog.cc (fatal): Make capable of handling a passed-in error code,
3668 as an alternative to calling GetLastError().
3669 * dialog.h (fatal): Adjust prototype as above.
3670 * mount.cc (create_mount): Use the above to correctly report errors.
3671
af111c7d
MB
36722004-10-28 Max Bowsher <maxb@ukf.net>
3673
3674 * LogFile.cc (LogFile::getFileName), splash.cc (SplashPage::Create),
3675 threebar.cc (ThreeBarProgressPage::SetBar2):
3676 Migrate from cistring and string resources
3677 to String and string literals.
3678 * localdir.cc: Remove unneeded #include of "cistring.h".
3679 * cistring.cc, cistring.h: Remove this now-redundant class.
3680 * Makefile.am: Remove mention of the above removed files.
3681 * res.rc, resource.h: Remove obsolete strings and IDs, both those
3682 obseleted by and obselete before the above changes.
3683 * res.rc: Merge the 2 adjacent STRINGTABLEs.
3684
8a264069
MB
36852004-10-27 Max Bowsher <maxb@ukf.net>
3686
3687 * Makefile.am (setup_SOURCES): Add "RECTWrapper.h". It was missing.
3688
b4b8ab8d
MB
36892004-10-25 Bas van Gompel <cygsup-patch.buzz@bavag.tmfweb.nl>
3690
3691 * package_source.cc (packagesource::set_canonical):
3692 Fix one-off in 'base' when ini is in same dir as package.
3693
49560a44
MB
36942004-10-25 Max Bowsher <maxb@ukf.net>
3695
3696 * main.cc (next_dialog): Remove this legacy global variable.
3697 * download.cc (do_download_thread): Return a value instead of setting
3698 a global variable, then returning void.
3699 (do_download_reflector): Look for the next dialog code as a return
3700 value instead of a global variable.
3701
99ff5a8b
MB
37022004-10-25 Max Bowsher <maxb@ukf.net>
3703
3704 * port.h: Remove this redundant file - all contained definitions are
3705 duplicated in "win32.h".
3706 * Makefile.am, UserSetting.cc, UserSettings.cc, archive.cc,
3707 archive_tar.cc, archive_tar_file.cc, choose.cc, compress.cc,
3708 compress_bz.cc, compress_gz.cc, desktop.cc, find.cc, fromcwd.cc,
3709 iniparse.y, install.cc, io_stream_cygfile.cc, io_stream_file.cc,
3710 main.cc, netio.cc, site.cc, version.cc:
3711 Remove all references to "port.h".
3712
46d04e97
MB
37132004-10-25 Max Bowsher <maxb@ukf.net>
3714
3715 Fix compilation with w32api 3.1 and later.
3716
3717 * ControlAdjuster.h, RECTWrapper.h, cistring.h, propsheet.h,
3718 window.cc, window.h: Include "win32.h" not <windows.h> directly.
3719 * win32.h (WINBASEAPI): Define to empty string.
3720
5524909e
IP
37212004-09-13 Igor Pechtchanski <pechtcha@cs.nyu.edu>
3722
3723 * script.cc (run): Kill stdin when running scripts.
3724
84b9cc5e
MB
37252004-09-01 Max Bowsher <maxb@ukf.net>
3726
3727 * Makefile.am: Oops. Unwanted keyword expansion ate the code of the
3728 previous commit. Restore the code, escaped to not look like a keyword.
3729
012374fe
MB
37302004-09-01 Max Bowsher <maxb@ukf.net>
3731
3732 * Makefile.am: Simplify the shell incantation for getting the revision
3733 of ChangeLog from grep-and-sed to just sed.
3734
b4113ac0
MB
37352004-08-31 Max Bowsher <maxb@ukf.net>
3736
3737 Attain GCC 3.4 compatibility.
3738
3739 * PackageSpecification.h (PackageSpecification): Make the
3740 unnecessarily private copy-constructor public.
3741
fc2ba841
MB
37422004-08-30 Max Bowsher <maxb@ukf.net>
3743
3744 Rework the implementation of not including -Werror for specific files,
3745 to a way that does not require hardcoding modified automake output back
3746 into its input.
3747
3748 * Makefile.am (AM_CXXFLAGS, BASECXXFLAGS): Seperate out -Werror.
3749 (autoload.o): Drop this rule, -finline-functions is no longer required
3750 and -Werror is acceptable here now we have __attribute__ ((used)).
3751 (WARNONLY_CFLAGS, inilex.o): Drop these.
3752 (EXTRA_PROGRAMS): Add a fake "warnonly" program.
3753 (warnonly_CXXFLAGS): Set to the $(BASECXXFLAGS).
3754 (warnonly_SOURCES): Set to "inilex.cc".
3755 (EXTRA_setup_SOURCES): Set to $(warnonly_SOURCES).
3756 (setup_SOURCES): Remove "inilex.cc".
3757 (setup_LDADD): Add "warnonly-inilex.o".
3758
d3c2a043
MB
37592004-08-30 Max Bowsher <maxb@ukf.net>
3760
3761 Move closer to GCC 3.4 compatibility.
3762
3763 * IOStreamProvider.h, io_stream_cygfile.cc, io_stream_cygfile.h,
3764 io_stream_file.cc: Do not incorrectly use "enum" after it has been
3765 hidden inside a typedef.
3766 * archive.h: In "virtual func() = 0;", the 0 is a language construct,
3767 not some symbol that might evaluate to 0, and gcc 3.4 enforces this.
3768 * autoload.c (DllInfo.name): Silence warning by making const.
3769 (DLL, autoload_common): __attribute__ ((used)) is now required to
3770 prevent gcc being over-eager in it's optimization, and removing these
3771 seemingly-unused (used only from assembly) functions.
3772 Silences some warnings, too.
3773 * Makefile.am (AM_CXXFLAGS, AM_CFLAGS): The options
3774 -Wstrict-prototypes -Wmissing-prototypes do not apply to C++ and
3775 g++ 3.4 complains about them.
3776
072fb49a
MB
37772004-08-29 Max Bowsher <maxb@ukf.net>
3778
ca2b7505 3779 * Exception.h: Reformatting, #include more, remove incorrect and
072fb49a
MB
3780 less-than-useful comments.
3781 (TOPLEVEL_CATCH): New preprocessor macro.
3782
3783 * LogFile.cc (LogFile::operator()): Throw an exception object, not a
3784 char* string.
3785
3786 Wrap the top-level of each thread (including the main thread) in a
3787 try...catch block, in order to display a useful error message if an
3788 exception is not caught.
3789 * download.cc (do_download_reflector): Here ...
3790 * ini.cc (do_ini_thread_reflector): ... and here ...
3791 * install.cc (do_install_reflector: ... and here ...
3792 * main.cc (main): ... and here ...
3793 * postinstall.cc (do_postinstall_thread): ... and here ...
3794 * site.cc (do_download_site_info_thread): ... and here!
3795
3796 * msg.h: Include a missing header requirement.
3797 * res.rc (IDS_UNCAUGHT_EXCEPTION, IDS_UNCAUGHT_EXCEPTION_WITH_ERRNO):
3798 New strings.
3799 * resource.h (IDS_UNCAUGHT_EXCEPTION)
3800 (IDS_UNCAUGHT_EXCEPTION_WITH_ERRNO): New IDs.
3801
56c41dda
MB
38022004-08-28 Max Bowsher <maxb@ukf.net>
3803
3804 * res.rc (IDS_WINDOW_INIT_BADMSG): New string.
3805 * resource.h (IDS_WINDOW_INIT_BADMSG): New string resource ID.
3806 * window.cc (Window::FirstWindowProcReflector): Convert an abort()
3807 into a descriptive error.
3808
abdd4b38
MB
38092004-08-24 Max Bowsher <maxb@ukf.net>
3810
3811 The Doug Lee replacement malloc was no longer hooked up with the
3812 buildsystem in any way. Pruning the remaining unused file.
3813
3814 * dlmalloc.c: Removed.
3815
24649384
MB
38162004-08-18 Max Bowsher <maxb@ukf.net>
3817
ca2b7505 3818 "librsync is not wire-compatible with rsync 2.x, and is not likely
24649384
MB
3819 to be in the future." -- librsync.sourceforge.net
3820
3821 So, it is of no practical use to setup. Therefore, removing all
3822 rsync related files and code from setup.
3823
3824 * rsync: Directory removed.
3825 * Makefile.am: Remove rsync support from the buildsystem.
3826 * configure.in: Ditto.
3827 * README: Since it seems vanishingly unlikely that it will ever happen,
3828 remove rsync support from the wishlist.
3829 * io_stream_rsync.cc: Remove.
3830 * io_stream_rsync.h: Remove.
3831
2800a92a
RC
38322004-04-25 Robert Collins <rbtcollins@hotmail.com>
3833
24649384
MB
3834 * package_meta.cc (packagemeta::set_requirements): fix problem with
3835 libpcre0 not being pulled in automatically.
2800a92a 3836
304e9816
RC
38372004-04-25 Robert Collins <rbtcollins@hotmail.com>
3838
24649384
MB
3839 * IniDBBuilderPackage.cc (dumpAndList):
3840 Move out to packageversion for reuse.
304e9816 3841 * package_meta.cc (packagemeta::logAllVersions): log dependencies.
24649384
MB
3842 * package_version.cc (packageversion::depends):
3843 provide a const accessor.
304e9816
RC
3844 (dumpAndList): Moved from INIDBBuilder.cc.
3845 * package_version.h: declare new method and function.
3846
5419ce48
RC
38472003-12-21 Robert Collins <rbtcollins@hotmail.com>
3848
3849 * main.cc (main): Update to head libgetopt++ syntax.
3850
201741b7
RC
38512003-11-2 Robert Collins <rbtcollins@hotmail.com>
3852
3853 * ControlAdjuster.h (ControlPosition::CP_MIDDLE): Rename to
3854 CP_CENTERED.
3855 * ControlAdjuster.cc: Ditto.
3856
081bf320
RC
38572003-10-31 Frank Richter <frichter@gmx.li>
3858
ca2b7505
CF
3859 * localdir.cc (OnNext): When SelectDirectoryA() fails, display a
3860 message with the error returned from the system instead of just
081bf320
RC
3861 'could not change dir'. Also, offer the user to 'Retry', 'Ignore' the
3862 error or 'Abort' the directory change.
3863
4b6e5406
RC
38642003-10-31 Frank Richter <frichter@gmx.li>
3865
3866 * propsheet.cc (PropSheetWndProc): Don't do child resizing if a the
3867 window gets minimized. Otherwise some glitches (e.g. wrong child
3868 sizes) occur.
3869 Added support for WM_GETMINMAXINFO. Prevents the property sheet from
3870 getting smaller than the original size.
3871
576a2b0b
RC
38722003-11-1 Robert Collins <rbtcollins@hotmail.com>
3873
3874 * ControlAdjuster.h (ControlDimension): Add.
3875 (ControlAdjuster): Factor adjust functionality into ControlInfo.
3876 * ControlAdjuster.cc (ControlAdjuster::adjust): Ditto.
3877 (ControlAdjuster::ControlInfo::adjust): Ditto.
3878
a8d753b6
RC
38792003-10-31 Igor Pechtchanski <pechtcha@cs.nyu.edu>
3880
3881 * ControlAdjuster.h (ControlPosition): New enum type.
3882 (ControlInfo::horizontalPos, ControlInfo::verticalPos): New
3883 instance variables.
3884 (ControlInfo::anchorLeft, ControlInfo::anchorTop,
3885 ControlInfo::anchorRight, ControlInfo::anchorBottom): Remove.
3886 * ControlAdjuster.cc (ControlAdjuster::AdjustControls): Switch to
3887 using position specifiers instead of anchors.
3888 * choose.cc (ChooserControlsInfo): Ditto.
3889 * proppage.cc (DefaultControlsInfo): Ditto.
3890 * propsheet.cc (PropSheetControlsInfo): Ditto.
3891 * site.cc (SiteControlsInfo): Position specifiers for site
3892 selection dialog controls.
3893 * threebar.cc (ThreeBarControlsInfo): Position specifiers for
3894 progress dialog controls.
3895
c9feb168
RC
38962003-10-27 Ralf Habacker <ralf.habacker@freenet.de>
3897
3898 * main.cc (HelpOption): New instance.
3899 (main): Added help command line option handling.
3900 * localdir.cc (LocalDirOption): New instance.
3901 (LocalDirSetting::load): allow setting localdir from command line.
3902
ee91d9be
RC
39032003-10-16 Frank Richter <frichter@gmx.li>
3904
ca2b7505
CF
3905 * ControlAdjuster.cc: New file, helper to move elements of a dialog
3906 along when the it's resized.
ee91d9be
RC
3907 * ControlAdjuster.h: Ditto.
3908 * Makefile.am: Add new source files.
3909 * proppage.cc (PropertyPage::DialogProc): Adjust some common
3910 controls (Cygwin icon top right, separator below) when a page is
3911 resized.
3912 (PropertyPage::PropertyPage): Dito.
3913 * propsheet.cc (IsDialog): New. Test whether a window is a dialog.
3914 Used internally by resize logic.
3915 (EnumPages): New. Used internally by resize logic: resizes the
3916 property sheet's individual pages.
3917 (PropSheetWndProc): New. Hook for the propery sheet window proc.
3918 (PropSheetProc): More style tweaks, add maximize box and thick border
3919 as well. Hook into the property sheet's window proc.
3920 (PropSheet::AdjustPageSize): New. Adjust the metrics of a single page
3921 to fit nicely into the property sheet. Part of resize logic.
3922 * res.rc (All dialogs): The top-right Cygwin icon and top separator
ca2b7505 3923 now have IDs distinct from IDC_STATIC, so their metrics can be
ee91d9be
RC
3924 adjusted upon a resize. Also, all those Cygwin icons are at the exact
3925 same spot now.
ca2b7505 3926 * choose.cc (ChooserPage::ChooserPage): Now the controls on the
ee91d9be
RC
3927 chooser page move/size when the page size is changed.
3928 * choose.h: Dito.
3929
1622a084
RC
39302003-10-23 Jerry D. Hedden <jerry@hedden.us>
3931
3932 * ConnectionSetting.cc (ConnectionSetting::load): Load proxysettings.
3933 (ConnectionSetting::save): Save proxy settings.
3934
7f6de8c0
RC
39352003-10-07 Robert Collins <rbtcollins@hotmail.com>
3936
3937 * proppage.h (PropertyPage::wantsActivation): const correctness fix.
3938
587a67fc
MB
39392003-08-19 Max Bowsher <maxb@ukf.net>
3940
3941 * win32.h: Define NOMINMAX only if not already defined - because
3942 libstdc++-v3 3.3.1 defines NOMINMAX itself.
3943
58b12a06
MB
39442003-08-03 Max Bowsher <maxb@ukf.net>
3945
3946 * ChangeLog: Fix broken line-wrapping throughout. Clarify that
3947 "Ran automake" in 2003-07-26 entry was in bz2lib and zlib subdirs.
3948
56a7c49e
MB
39492003-08-03 Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>
3950
3951 * propsheet.cc (Copyright): Update copyright dates.
3952 (PropSheet::PropSheet): Remove NumPropPages initialization.
3953 (PropSheet::CreatePages): Use PropertyPages.size() instead of
3954 NumPropPages.
3955 (PropSheet::Create): Ditto.
3956 (PropSheet::AddPage): Change to use new PropertyPages std::vector<>.
3957 * propsheet.h (Copyright): Update copyright dates.
3958 (File Scope): Include <vector>.
3959 (PropSheet::PropertyPages): Change from array to vector<>.
3960 (PropSheet::NumPropPages): Remove.
3961
25130a4d
MB
39622003-08-02 Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>
3963
3964 Changes modified by Max Bowsher <maxb@ukf.net>
3965 * splash.cc (Copyright): Update copyright dates.
3966 (SplashPage::OnInit): Remove call to SetDlgItemFont(). Now handled in
3967 base class.
3968 * proppage.h (PropertyPage::setTitleFont): Declare.
3969 * proppage.cc (Copyright): Update copyright dates.
3970 (PropertyPage::DialogProc WM_INITDIALOG): Move all font setting code,
3971 including that from splash.cc into new function...
3972 (PropertyPage::setTitleFont): Create, using moved code. Change font
3973 "MS Sans Serif" to "MS Shell Dlg" in line with recent res.rc change.
3974 Set font for IDC_STATIC_WELCOME_TITLE here, to allow easy re-use of
3975 style for future "Finished" page.
3976
62489576
MB
39772003-08-02 Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>
3978
3979 * propsheet.cc: Include "resource.h".
3980 (PropSheet::Create): Add the Cygwin icon in the left of the title bar.
3981
106d8160
MB
39822003-08-01 Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>
3983
3984 * proppage.cc (PropertyPage::FirstDialogProcReflector): Modify comment.
3985
5296fc07
MB
39862003-08-01 Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>
3987
3988 * proppage.h (Copyright): Update copyright dates.
3989 (PropertyPage): Document OnNext and OnBack.
3990
5039f845
MB
39912003-07-31 Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>
3992
3993 * proppage.cc (PropertyPage::Create): Use more self-documenting
3994 MAKEINTRESOURCE() instead of cast to LPCSTR.
3995
672d28ad
RC
39962003-07-31 Robert Collins <rbtcollins@hotmail.com>
3997
3998 * README: Mark completed items complete.
3999
c59b8da6
MB
40002003-07-31 Pierre Humblet <pierre.humblet@ieee.org>
4001
4002 * main.cc (set_default_sec): Set token owner from token user.
4003 Always try to set the token primary group to Users or Admins.
4004
25e21380
IP
40052003-07-30 Igor Pechtchanski <pechtcha@cs.nyu.edu>
4006
4007 * String++.h (String::replace): New instance functions.
4008 * String++.cc (String::replace): Implement.
4009 * filemanip.cc (backslash): Change to use String::replace.
4010 * desktop.cc (make_cygwin_bat): Escape '%' in path.
4011
346627e7
IP
40122003-07-30 Igor Pechtchanski <pechtcha@cs.nyu.edu>
4013
4014 * String++.h (TOSTRING): New macro.
4015 * UserSettings.cc (UserSettings::deRegisterSetting): Fix
4016 erroneous __LINE__/__FILE__ usage.
4017 * download.cc (validateCachedPackage, check_for_cached): Ditto.
4018 * geturl.cc (getUrlToStream): Ditto.
4019 * install.cc (md5_one): Ditto.
4020
d9f4a2ba
MB
40212003-07-30 Max Bowsher <maxb@ukf.net>
4022
4023 * ini.cc (do_ini_thread): Return bool.
4024 (do_ini_thread_reflector): Put returned bool in lParam.
4025 * threebar.cc (WM_APP_SETUP_INI_DOWNLOAD_COMPLETE): Rework for new
4026 meaning of lParam. Replace erroneous use of do_fromcwd with
4027 SetActivePageByID (IDD_SOURCE).
4028
39b42ff3
RC
40292003-07-30 Robert Collins <rbtcollins@hotmail.com>
4030
4031 * ConnectionSetting.cc: New file, persist connection type selection.
4032 * ConnectionSetting.h: Ditto.
4033 * net.cc: Hold a ConnectionSetting instance to trigger the logic.
4034 (NetPage::OnInit): Don't force net_method to any value.
4035 * Makefile.am: Add new source files.
4036
6ff96351
RC
40372003-07-30 Robert Collins <rbtcollins@hotmail.com>
4038
4039 * SourceSetting.cc: New file, persist source selection.
4040 * SourceSetting.h: Ditto.
4041 * source.cc: Hold a Source setting instance to trigger the logic.
4042 * Makefile.am: Add new source files.
4043
f0fd8856
RC
40442003-07-30 Robert Collins <rbtcollins@hotmail.com>
4045
4046 * UserSettings.h (UserSettings::settingFileForLoad): Extracted method
4047 from LocalDirSetting::load().
4048 * UserSettings.cc (UserSettings::settingFileForLoad): Ditto.
4049 * UserSettings.h (UserSettings::settingFileForSave): Extracted method
4050 from LocalDirSetting::save().
4051 * UserSettings.cc (UserSettings::settingFileForSave): Ditto.
4052 * localdir.cc (LocalDirSetting::load): Extract location logic to
4053 UserSettings.
4054 (LocalDirSetting::save): Extract location logic to UserSettings.
4055 * site.cc (SiteSetting::getSavedSites): Use
4056 UserSettings::settingFileForLoad.
4057 (SiteSetting::save): Use UserSettings::settingFileForSave.
4058
bb8e2353
RC
40592003-07-30 Robert Collins <rbtcollins@hotmail.com>
4060
ca2b7505 4061 * PickView.cc: Adjust ::GetClientRect(..) to the inherited one
bb8e2353
RC
4062 throughout.
4063
b28e9f01
MB
40642003-07-29 Max Bowsher <maxb@ukf.net>
4065
4066 Based on a patch by Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>.
4067 * AntiVirus.cc (AntiVirusPage::wantsActivation): Define.
4068 * AntiVirus.h (AntiVirusPage::wantsActivation): Declare.
4069 * localdir.cc (LocalDirPage::OnBack): Remove logic subsumed by
4070 RootPage::wantsActivation.
4071 * proppage.cc (PropertyPage::DialogProc): Call wantsActivation(),
4072 and skip to next page in sequence if activation is refused.
4073 * proppage.h (PropertyPage::wantsActivation): Default implementation.
4074 * root.cc (RootPage::wantsActivation): Define.
4075 * root.h (RootPage::wantsActivation): Declare.
4076 * source.cc: Don't include "AntiVirus.h".
4077 (SourcePage::OnNext): Remove logic subsumed by
4078 RootPage::wantsActivation.
4079 (SourcePage::OnBack): Remove logic subsumed by
4080 AntiVirusPage::wantsActivation.
4081 * splash.cc: Don't include "AntiVirus.h" or "dialog.h".
4082 (SplashPage::OnNext): Remove - subsumed by
4083 AntiVirusPage::wantsActivation.
4084 * splash.h (SplashPage::OnNext): Remove declaration.
4085
ec2dbbf0
RC
40862003-07-29 Robert Collins <rbtcollins@hotmail.com>
4087
4088 * PickView.h (PickView::refresh): New method.
4089 * PickView.cc (PickView::refresh): Extracted from various
4090 ChooserPage callers.
4091 * choose.cc: Use PickView::refresh wherever possible.
4092
bc16bb7d
RC
40932003-07-29 Robert Collins <rbtcollins@hotmail.com>
4094
4095 * choose.h (ChooserPage::createListView): Remove last parameter.
4096 (ChooserPage::getDefaultListViewSize): Extracted method.
4097 * choose.cc (ChooserPage::createListView): Remove last parameter.
4098 (ChooserPage::getDefaultListViewSize): Extracted method.
4099
952ea3fe
RC
41002003-07-29 Robert Collins <rbtcollins@hotmail.com>
4101
ca2b7505 4102 * choose.cc (ChooserPage::createListView): Remove unneeded
952ea3fe
RC
4103 parameter.
4104 * choose.h: Ditto.
4105
55c6e691
MB
41062003-07-29 Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>
4107
4108 * dialog.h (do_fromcwd): Change function declaration.
4109 * fromcwd.cc (do_fromcwd): Change return type to bool. Eliminate
4110 use of next_dialog, return true or false instead.
4111 * localdir.cc (LocalDirPage::OnNext): Use do_fromcwd()'s return
4112 value instead of next_dialog.
4113
2f18f94d
RC
41142003-07-29 Robert Collins <rbtcollins@hotmail.com>
4115
4116 * package_db.h (packagedb::fillMissingCategory): Move from ChooserPage.
4117 * choose.h (ChooserPage::fillMissingCategory): Delete.
4118 * package_db.cc (packagedb::fillMissingCategory): Move from ChooserPage.
ca2b7505 4119 * choose.cc (ChooserPage::fillMissingCategory): Delete and adjust
2f18f94d
RC
4120 callers.
4121
525531ca
RC
41222003-07-29 Robert Collins <rbtcollins@hotmail.com>
4123
4124 * PickView.h (CATEGORY_EXPANDED): Move from choose.h
4125 (CATEGORY_COLLAPSED): Move from choose.cc.
4126 (PickView::setViewMode): Move from ChooserPage.
4127 * choose.h (CATEGORY_EXPANDED): Delete.
4128 (CATEGORY_COLLAPSED): Delete.
4129 (ChooserPage::setViewMode): Delete.
4130 * PickView.cc (PickView::setViewMode): Move from ChooserPage.
4131 * chooser.cc (ChooserPage::setViewMode): Delete, and adjust callers
4132 throughout.
4133
0f61a6a4
MB
41342003-07-28 Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>
4135
4136 * AntiVirus.cc (AntiVirusPage::OnNext): Do not explicitly specify the
4137 page to display next, since it follows in the default page ordering
4138 anyway.
4139
6d751ec8
MB
41402003-07-28 Max Bowsher <maxb@ukf.net>
4141
4142 * dialog.h: (NEXT): Remove obsolete macro.
4143 * site.cc (save_dialog): Remove use of NEXT(), and non-functional
4144 unnecessary error handler.
4145
358712d8
RC
41462003-07-28 Robert Collins <rbtcollins@hotmail.com>
4147
4148 * package_meta.h (packagemeta::addToCategoryAll): Declare.
ca2b7505 4149 * package_meta.cc (packagemeta::addToCategoryAll): New method,
358712d8
RC
4150 separated to allow clear iteration.
4151 * choose.cc (ChooserPage::fillMissingCategory): BUGFIX: "all" is
4152 meant to be added unconditionally.
4153
31f0ccce
RC
41542003-07-27 Robert Collins <rbtcollins@hotmail.com>
4155
4156 * Generic.h: New file, home for generic programming tools.
4157 (visit_if): Move here from package_meta.cc.
4158 Adjust to be fully parameterised.
ca2b7505 4159 * package_meta.h (packagemeta::hasNoCategories): Query for generic
31f0ccce
RC
4160 programming.
4161 (packagemeta::setDefaultCategories): set categories for packages
4162 with none.
ca2b7505 4163 * package_meta.cc: Move visit_if out. Adjust users for
31f0ccce
RC
4164 full paramterised operation.
4165 (packagemeta::hasNoCategories): Implement.
4166 (packagemeta::setDefaultCategories): Implement.
4167 * choose.cc (ChooserPage::fillMissingCategory): Use visit_if to
4168 reduce duplicate code.
4169 (ChooserPage::setExistence): Delete.
ca2b7505 4170 * choose.h (ChooserPage::setExistence): Rename to
31f0ccce
RC
4171 packagedb::setExistence.
4172 * package_db.h (packagedb::setExistence): Declare.
4173 * package_db.cc (packagedb::setExistence): Copy from choose.cc
4174
dbdc1d9d
RC
41752003-07-27 Robert Collins <rbtcollins@hotmail.com>
4176
4177 * localdir.h (LocalDirPage::OnInit): Remove.
4178 * localdir.cc (LocalDirPage::OnInit): Move to LocalDirSetting
4179 ::load().
4180 (LocalDirSetting::load): Copied from LocalDirPage::OnInit.
4181 * site.h (SitePage::OnInit): Remove.
4182 (SitePage::getSavedSites): New member, replaces get_saved_sites.
ca2b7505 4183 (SitePage::registerSavedSite): New member, replaces
dbdc1d9d
RC
4184 register_saved_site.
4185 * site.cc (SitePage::OnInit): Move to SiteSetting::load().
4186 (SiteSetting::load): Copied from SitePage::OnInit.
4187 (SitePage::getSavedSites): Renamed from get_saved_sites.
4188 (SitePage::registerSavedSite): Renamed from register_saved_site.
4189 (do_download_site_info_thread): Don't look at the list size for
4190 determining if the download was successful.
4191
22120c90
RC
41922003-07-27 Robert Collins <rbtcollins@hotmail.com>
4193
ca2b7505 4194 * choose.h (ChooserPage::setViewMode): Remove HWND from
22120c90
RC
4195 signature.
4196 (ChooserPage::defaultTrust): Ditto.
4197 Move to PickView.
ca2b7505 4198 (ChooserPage::ifChecked): Use Window helper function
22120c90
RC
4199 IsButtonChecked.
4200 * choose.cc (ChooserPage::setViewMode): Use chooser->GetHWND()
4201 throughout.
4202 Update all callers with new signature.
4203 (ChooserPage::defaultTrust): Ditto.
4204 Move to PickView.
4205 * PickView.h (PickView::defaultTrust): Declare.
4206 * PickView.cc (PickView::defaultTrust): Copy from chooser.cc.
4207
9c9cfce7
RC
42082003-07-27 Robert Collins <rbtcollins@hotmail.com>
4209
4210 * PickView.h (PickView::lv): Eliminate.
4211 * PickView.cc (PickView::init): Replace use of lv with
4212 GetHWND().
ca2b7505 4213 (PickView::list_click): Ditto.
9c9cfce7
RC
4214 * choose.h (ChooserPage::lv): Eliminate.
4215 * choose.cc: Replace lv with chooser->GetHWND()
4216 throughout.
4217
d2be933d
RC
42182003-07-27 Robert Collins <rbtcollins@hotmail.com>
4219
4220 * PickView.h (PickView::chooser): Eliminate.
4221 (PickView::list_vscroll): Make non-static.
4222 (PickView::list_hscroll): Ditto.
4223 (PickView::list_click): Ditto.
4224 (PickView::paint): Ditto.
4225 * PickView.cc (PickView::list_vscroll): Eliminate use
4226 of PickView::chooser.
4227 (PickView::list_hscroll): Ditto.
4228 (PickView::list_click): Ditto.
4229 (PickView::paint): Ditto.
4230 * choose.cc (Chooser::createListView): Eliminate use
4231 of PickView::chooser.
4232
693916f8
RC
42332003-07-27 Robert Collins <rbtcollins@hotmail.com>
4234
4235 * PickView.h (PickView): Inherit from Window.
4236 (PickView::RegisterWindows): Move from ChooserPage.
4237 (PickView::listview_proc): Likewise.
4238 (PickView::paint): Ditto.
4239 (PickView::list_click): Ditto.
4240 (PickView::list_hscroll): Ditto.
4241 (PickView::list_vscroll): Ditto.
4242 (PickView::lv): Ditto.
4243 (PickView::chooser): Ditto.
4244 (PickView::Create): Override Windows::Create as we migrate.
4245 (PickView::registerWindowClass): Renamed RegisterWindows.
4246 (PickView::WindowClassAtom): Prevent double registration.
4247 (PickView::init): Declare.
4248 * PickView.cc: Adjust for new inheritance.
4249 (PickView::RegisterWindows): Move from ChooserPage.
4250 (PickView::listview_proc): Likewise.
4251 (PickView::paint): Ditto.
4252 (PickView::list_click): Ditto.
4253 (PickView::list_hscroll): Ditto.
4254 (PickView::list_vscroll): Ditto.
4255 (PickView::lv): Ditto.
4256 (PickView::chooser): Ditto.
4257 (PickView::Create): Introduce stub.
4258 (PickView::RegisterWindows): Rename
4259 (PickView::init): Extracted from constructor to allow
4260 reordering.
ca2b7505 4261 * chooser.h (ChooserPage::registerWindows): Rename to
693916f8
RC
4262 PickView::RegisterWindows.
4263 (ChooserPage::listview_proc): Likewise.
4264 (ChooserPage::paint): Ditto.
4265 (ChooserPage::list_click): Ditto.
4266 (ChooserPage::list_hscroll): Ditto.
4267 (ChooserPage::list_vscroll): Ditto.
ca2b7505 4268 (ChooserPage::lv): Duplicate into PickView, observe
693916f8
RC
4269 as non-static.
4270 (ChooserPage::chooser): Ditto.
4271 * chooser.cc (ChooserPage::registerWindows): Delete.
4272 (ChooserPage::listview_proc): Ditto.
4273 (ChooserPage::paint): Ditto.
4274 (ChooserPage::list_click): Ditto.
4275 (ChooserPage::list_hscroll): Ditto.
4276 (ChooserPage::list_vscroll): Ditto.
4277 (ChooserPage::createListView): Create() on PickView.
ca2b7505 4278 * window.h (Window::RegisterWindowClass): Make virtual
693916f8
RC
4279 to allow Create to become a Template Method, and rename
4280 to registerWindowClass as it's not static.
4281 * window.cc (Window::registerWindowClass): Ditto.
4282 (Window::FirstWindowProcReflector): BUGFIX: Set window
4283 handle to prevent races with the window procedure.
4284
724c2956
RC
42852003-07-27 Robert Collins <rbtcollins@hotmail.com>
4286
4287 * choose.cc (set_view_mode): Rename to ChooserPage::setViewMode.
4288 (default_trust): Rename to ChooserPage::defaultTrust.
4289 (fill_missing_category): Rename to ChooserPage::fillMissingCategory.
4290 (set_existence): Rename to ChooserPage::setExistence.
4291 (register_windows): Rename to ChooserPage::registerWindows.
4292 (listview_proc): Rename to ChooserPage::listview_proc.
4293 (paint): Rename to ChooserPage::paint.
4294 (list_click): Rename to ChooserPage::list_click.
4295 (list_hscroll): Rename to ChooserPage::list_hscroll.
4296 (list_vscroll): Rename to ChooserPage::list_vscroll.
4297 (lv): Rename to ChooserPage::lv.
4298 (chooser): Rename to ChooserPage::chooser.
4299 * choose.h (ChooserPage::setViewMode): Declare.
4300 (ChooserPage::defaultTrust): Declare.
4301 (ChooserPage::fillMissingCategory): Declare.
4302 (ChooserPage::setExistence): Declare.
4303 (ChooserPage::registerWindows): Declare.
4304 (ChooserPage::listview_proc): Declare.
4305 (ChooserPage::paint): Declare.
4306 (ChooserPage::list_click): Declare.
4307 (ChooserPage::list_hscroll): Declare.
4308 (ChooserPage::list_vscroll): Declare.
4309 (ChooserPage::lv): Declare.
4310 (ChooserPage::chooser): Declare.
4311
d05ae76a
RC
43122003-07-27 Robert Collins <rbtcollins@hotmail.com>
4313
ca2b7505 4314 * choose.cc (create_listview): Use for_each instead of explicit
d05ae76a
RC
4315 iteration.
4316 (create_listview): Rename to ChooserPage::createListview.
4317 * package_meta.h (packagemeta::set_requirements): Explicitly separate
4318 the 1 and 2 parameter versions.
4319
43202003-07-27 Robert Collins <rbtcollins@hotmail.com>
69711722
RC
4321
4322 * String++.h (String::operator !=): Declare for char * and String.
4323 * String++.cc (String::operator !=): Implement.
4324 * package_meta.cc(StringConcatenator): Move above all users.
4325 (_visit_if): Predicate support for visitors.
ca2b7505 4326 (packagemeta::getReadableCategoryList): Refactor to use
69711722
RC
4327 StringConcatenator with a predicate.
4328 * choose.h: Remove unneeded c++ guards.
4329
cda26207
RC
43302003-07-26 Robert Collins <rbtcollins@hotmail.com>
4331
58b12a06
MB
4332 * choose.cc (scan_downloaded_files): Rename to
4333 packagemeta::ScanDownloadedFiles.
cda26207
RC
4334 (scanAVersion): Rename to packageversion::scan.
4335 (GetParentRect): Rename to ChooserPage::getParentRect.
4336 * choose.h (ChooserPage::getParentRect): Declare.
4337 * package_meta.h (packagemeta::ScanDownloadedFiles): Declare.
4338 * package_version.h (packageversion::scan): Declare.
4339 * package_version.cc (packageversion::scan): Move from choose.cc
58b12a06
MB
4340 * package_meta.cc (packagemeta::ScanDownloadedFiles): Move from
4341 choose.cc
cda26207 4342
edc3c6fc
RC
43432003-07-26 Robert Collins <rbtcollins@hotmail.com>
4344
4345 * choose.cc (ChooserPage::OnNext): log before starting activity threads.
4346 (ChooserPage::OnInit): Remove temporary variable frame.
4347 (ChooserPage::setPrompt): Extract method from OnInit.
4348 (choose_inst_text): Remove unused variable.
4349 * choose.h(ChooserPage::setPrompt): Declare
4350 * res.rc (IDD_CHOOSE): Bugfix: the chooser was setting a non-present
4351 caption.
4352
d55e14fe
RC
43532003-07-26 Robert Collins <rbtcollins@hotmail.com>
4354
4355 Remove package specific code from choose.cc.
4356 Update copyrights where appropriate.
4357 * choose.cc(ChooserPage::OnNext): Extract logging to
4358 packagemeta::logSelectionStatus.
4359 * package_meta.cc(packagemeta::logSelectionStatus): Extract from
4360 ChooserPage::OnNext.
4361 (StringConcatenator): helper for logSelectionStatus.
4362 (action_caption): Make const.
4363 * package_meta.h(packagemeta): Declare logSelectionStatus.
4364 (packagemeta::action_caption): Make const.
4365 * package_version.cc(packageversion::sourcePackage): Make const.
4366 * package_version.h(packageversion::sourcePackage): Make const.
4367
12f8ac69
RC
43682003-07-26 Robert Collins <rbtcollins@hotmail.com>
4369
4370 * choose.cc: Update copyright.
4371 (ChooserPage::keepClicked): Extracted from OnMessageCmd.
4372 (ChooserPage::changeTrust): Ditto.
4373 * choose.h (ChooserPage): Declare keepClicked and changeTrust.
4374 (ChooserPage::ifChecked): Extracted from OnMessageCmd.
58b12a06
MB
4375 * package_meta.h (SetRequirement): Adapter for visiting package
4376 collections.
12f8ac69 4377
93d7e783
MB
43782003-07-26 Max Bowsher <maxb@ukf.net>
4379
4380 * tests/.cvsignore: New file, listing Makefile.in.
4381
dea6cc21
RC
43822003-07-26 Robert Collins <rbtcollins@hotmail.com>
4383
4384 Save used local cache dir from initial run of setup, so the user doesn't
4385 need to retype it.
58b12a06
MB
4386 * localdir.h (LocalDirSetting): UserSetting class for the local cache
4387 dir.
4388 * localdir.cc (LocalDirSetting::save): Replace save_local_dir, and
4389 update callers.
dea6cc21 4390
0df9be37
RC
43912003-07-26 Robert Collins <rbtcollins@hotmail.com>
4392
ca2b7505 4393 Save used site from initial run of setup, so the user doesn't need to
0df9be37
RC
4394 retype it.
4395 * main.cc (main): Load and save all user settings.
4396 * site.cc (SiteSetting::save): Migrate logic from save_site_url.
58b12a06
MB
4397 (SitePage::OnNext): Use ChosenSites.save() to remove uneeded
4398 save_site_url call.
0df9be37
RC
4399 (save_site_url): Delete.
4400 * site.h (save_site_url): Remove declaration.
4401 * .cvsignore: Update autoconf generated files.
4402
bf137801
RC
44032003-07-26 Robert Collins <rbtcollins@hotmail.com>
4404
4405 * tests/Makefile.am: Driver for test suite.
4406 * tests/UserSettingTest.cc: Test UserSetting interface.
4407 * tests/UserSettingsTest.cc: Test UserSettings interface.
4408 * Makefile.am: Add the tests dir to recurse into.
4409 * configure.in: Ditto.
58b12a06
MB
4410 * UserSetting.h: Add load and save methods to allow global
4411 serialisation.
bf137801
RC
4412 Add explicit copy and assignment operators to prevent synthetics.
4413 Make the constructor protected to prevent direct instantiation.
4414 * UserSettings.h (UserSettings::loadAllSettings): New method.
4415 (UserSettings::savedAllSettings): New method.
4416 * UserSettings.cc: Implement new methods.
4417 * site.cc: Implement stubs for new required UserSetting methods.
4418 * site.h (ChosenSite): Ditto.
58b12a06
MB
4419 * bz2lib/: Ran automake.
4420 * zlib/: Ran automake.
bf137801 4421
3d5a4f16
MB
44222003-07-23 Max Bowsher <maxb@ukf.net>
4423
4424 * desktop.cc (DesktopSetupPage::OnBack): Remove obsolete use of NEXT().
4425 * root.cc (RootPage::OnNext): Ditto.
4426 (RootPage::OnBack): Ditto.
4427 * install.cc (do_install_thread): Remove obsolete use of next_dialog.
4428 * main.cc (main): Ditto.
4429 * postinstall.cc (do_postinstall_thread): Ditto.
4430
7108d406
MB
44312003-07-23 Max Bowsher <maxb@ukf.net>
4432
4433 * dialog.h (do_choose, do_desktop, do_local_dir, do_net, do_other)
4434 (do_root, do_site, do_source, do_splash): Remove declarations, since
4435 these functions no longer exist.
4436
b1c23913
MB
44372003-07-23 Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>
4438
4439 * choose.cc (initialized): Remove obsolete file scope variable.
4440
d52a6cc8
MB
44412003-07-18 Max Bowsher <maxb@ukf.net>
4442
4443 * res.rc: Make caption of every dialog page begin with "Cygwin Setup".
4444 This aids recognition when minimized.
4445 Prompted by Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>.
4446
9d53f045
MB
44472003-07-10 Jeremy White <jwhite@codeweavers.com>
4448
4449 * mount.cc, root.cc, site.cc: Make StringOptions required,
4450 thereby making --longopt <parm> behave as a newbie would expect.
4451
12e726c4
MB
44522003-07-08 Max Bowsher <maxb@ukf.net>
4453
4454 * LogFile.h, cistring.h, dialog.h, diskfull.h, filemanip.h, geturl.h,
4455 hash.h, log.h, mkdir.h, mklink2.h, mount.h, msg.h, netio.h, nio-file.h,
4456 nio-ftp.h, nio-http.h, nio-ie5.h, port.h, simpsock.h, state.h,
4457 version.h: Add inclusion guard.
4458 * root.h: Standardize naming of inclusion guard.
4459
c93bc6d0
MB
44602003-06-23 Max Bowsher <maxb@ukf.net>
4461
4462 * AntiVirus.h, Exception.h, FilterVisitor.h, FindVisitor.h,
4463 IOStreamProvider.h, IniDBBuilder.h, IniDBBuilderPackage.h,
4464 IniParseFeedback.h, IniParseFindVisitor.h, LogSingleton.h, MD5++.h,
4465 PackageSpecification.h, PackageTrust.h, PickCategoryLine.h, PickLine.h,
4466 PickPackageLine.h, PickView.h, RECTWrapper.h, ScanFindVisitor.h,
4467 String++.h, UserSetting.h, UserSettings.h, archive.h, archive_tar.h,
4468 category.h, choose.h, compress.h, compress_bz.h, compress_gz.h,
4469 cygpackage.h, desktop.h, download.h, find.h, ini.h, io_stream.h,
4470 io_stream_cygfile.h, io_stream_file.h, io_stream_memory.h,
4471 io_stream_rsync.h, localdir.h, net.h, package_db.h, package_meta.h,
4472 package_source.h, package_version.h, proppage.h, propsheet.h, script.h,
4473 site.h, source.h, splash.h, threebar.h, win32.h, window.h:
4474 Standardize naming and placement of inclusion guards.
4475
4a2af5fb
MB
44762003-06-22 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
4477
4478 * res.rc (all dialogs): Change font from "MS Sans Serif" to
4479 "MS Shell Dlg".
4480
8b726ef6
MB
44812003-06-22 Max Bowsher <maxb@ukf.net>
4482
4483 * Makefile.am: Clarify comment.
4484 Derive AM_CFLAGS from AM_CXXFLAGS, rather than the other way around.
4485 (AM_CXXFLAGS): Remove -Wmissing-declarations - it is a C-only warning.
4486 (AM_CFLAGS): Add -Winline, and -Wmissing-declarations.
4487
1e9ebf8a
MB
44882003-06-22 Max Bowsher <maxb@ukf.net>
4489
4490 * rfc1738.cc (rfc1738_do_escape): Eliminate redundant conditional.
4491
0a539fe4
MB
44922003-06-05 Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>
4493
4494 * window.h (SETUP_WINDOW_H): Rename multi-include guard.
4495 (Copyright): Update.
4496 (RECTWrapper): New forward declaration.
4497 (Window::Create): Move.
4498 (Window::MoveWindow): New overload declaration.
4499 * window.cc: (RECTWrapper.h) Include.
4500 (Copyright): Update.
4501 (Window::FirstWindowProcReflector): Use reinterpret_cast<> instead
4502 of C-style casts.
4503 (Window::MoveWindow): New overload.
4504
3c0ca7aa
MB
45052003-05-31 Max Bowsher <maxb@ukf.net>
4506
4507 * res.rc: Resize title controls to fully fill available width.
4508
e0d021d0
MB
45092003-05-07 Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>
4510
4511 * RECTWrapper.h: New file.
4512
1e3b2ad4
RC
45132003-04-12 Robert Collins <rbtcollins@hotmail.com>
4514
4515 * script.cc (Script::extension): Extract method from Script::run.
4516 (Script::run): Extract extension generation to Script::extension.
4517 * script.h (Script::extension): Declare.
4518
2533f348
RC
45192003-04-12 Robert Collins <rbtcollins@hotmail.com>
4520
4521 * script.cc (run_script): Remove.
4522 (try_run_script): Inline method run_script.
4523 * script.h (run_script): Remove.
4524
34ea5b6d
RC
45252003-04-12 Robert Collins <rbtcollins@hotmail.com>
4526
4527 * postinstall.cc (RunScript::operator()): Use new run syntax.
4528 * script.h (Script::run): Eliminate to_log parameter.
4529 * script.cc (Script::run): Ditto.
4530 (run_script): Use new run syntax.
4531
9f27ab95
RC
45322003-04-12 Robert Collins <rbtcollins@hotmail.com>
4533
4534 * script.cc (Script::run): Eliminate temp variable 'f2'.
4535 Rename temp variable 'f2' to 'windowsName' for increased clarity.
4536
783ed9c5
RC
45372003-04-12 Robert Collins <rbtcollins@hotmail.com>
4538
4539 * script.cc (Script::run): Eliminate temp variable 'fname'.
4540
0900bd5b
RC
45412003-04-12 Robert Collins <rbtcollins@hotmail.com>
4542
4543 * script.cc (Script::run): Eliminate temp variable 'dir'.
4544
294e5067
RC
45452003-04-12 Robert Collins <rbtcollins@hotmail.com>
4546
4547 * script.cc (run_script): Always pass TRUE to Script::run.
4548 * script.h (run_script): Remove optional to_log parameter.
4549
a0e56f67
RC
45502003-04-12 Robert Collins <rbtcollins@hotmail.com>
4551
4552 * script.cc (run_script): Move functionality into Script.
4553 (Script::run): Absorb run_script.
4554
8c242540
RC
45552003-04-12 Robert Collins <rbtcollins@hotmail.com>
4556
4557 * PickCategoryLine.cc (PickCategoryLine::click): Tell packagemeta we
4558 are about to perform a visit.
4559 * PickPackageLine.cc (PickPackageLine::click): Tell packagemeta we
4560 are about to perform a visit.
ca2b7505 4561 * package_db.cc (packagedb::markUnVisited): Convenience wrapper -
8c242540
RC
4562 mark all packages as unvisited.
4563 * package_db.h (packagedb::markUnVisited): Declare.
4564 * package_meta.cc (packagemeta::PrepareForVisit): New static method
4565 to prepare for a loop-free visit.
4566 (packagemeta::packagemeta): Adjust for new member.
4567 (packagemeta::set_requirements): Only visit a node once.
4568 (packagemeta::visited): Get and Set methods for new member visited_.
4569 * package_meta.h (packagemeta::PrepareForVisit): Declare.
4570 (packagemeta::visited): Declare.
4571 (packagemeta::visited_): Declare.
4572
5f4b0e57
MB
45732003-04-07 Max Bowsher <maxb@ukf.net>
4574
4575 * download.cc: Add command line option to suppress MD5 checks.
4576 (validateCachedPackage): Test option and possibly skip.
4577
e46e15bf
RC
45782003-04-02 Robert Collins <rbtcollins@hotmail.com>
4579
4580 Merge in setup-200303-troubleshooting fixes.
4581
45822003-04-02 Robert Collins <rbtcollins@hotmail.com>
4583
4584 * main.cc (NTSecurity::setDefaultDACL): Reinstate commented code.
4585 (NTSecurity::setDefaultSecurity): Ditto.
4586
45872003-04-02 Robert Collins <rbtcollins@hotmail.com>
4588
4589 * main.cc (NTSecurity::setDefaultDACL): Use MS calculations for ACL
4590 buffer sizing.
4591
45922003-04-02 Robert Collins <rbtcollins@hotmail.com>
4593
4594 * main.cc (NTSecurity::setDefaultDACL): Sanity check memory allocation.
4595
45962003-04-02 Robert Collins <rbtcollins@hotmail.com>
4597
58b12a06
MB
4598 * main.cc (NTSecurity::setDefaultDACL): Adjust commented code for
4599 auto_ptr use.
e46e15bf
RC
4600
46012003-04-02 Robert Collins <rbtcollins@hotmail.com>
4602
4603 * main.cc (NTSecurity::NoteFailedAPI): Helper function.
4604 Use throughout NTSecurity routines.
4605 (NTSecurity::setDefaultDACL): Use dynamic memory for ACL storage.
4606
46072003-04-02 Robert Collins <rbtcollins@hotmail.com>
4608
58b12a06
MB
4609 * main.cc (NTSecurity::setDefaultDACL): Disable ~ 50% of remaining
4610 active code.
e46e15bf
RC
4611
46122003-04-02 Robert Collins <rbtcollins@hotmail.com>
4613
4614 * main.cc (NTSecurity::GroupInfo): Extract group query code.
4615 (NTSecurity::setDefaultDACL): Disable ~ 50% of code.
4616
46172003-04-02 Robert Collins <rbtcollins@hotmail.com>
4618
58b12a06
MB
4619 * main.cc (NTSecurity::setDefaultSecurity): Disable ~ 50% of security
4620 code.
e46e15bf
RC
4621
46222003-04-01 Robert Collins <rbtcollins@hotmail.com>
4623
58b12a06
MB
4624 * main.cc (NTSecurity::setDefaultSecurity): Remove double declaration of
4625 sz. User TokenGroupCollection to abstract token searching logic,
4626 eliminate isadmin and isuser temporary variables.
e46e15bf
RC
4627 (TokenGroupCollection): New class for querying token group information.
4628
46292003-04-01 Robert Collins <rbtcollins@hotmail.com>
4630
4631 * main.cc (NTSecurity::setDefaultSecurity): Extract esid initialisation.
4632 Move local variables to just before first use.
4633 SetTokenInformationFailures where being handled inconsistently.
4634 Remove assignments from if statements.
4635 (NTSecurity::esid): Rename to everyOneSID.
4636 (NTSecurity::initialiseEveryOneSID): new method.
4637 (NTSecurity::setDefaultDACL): Extract method for default DACL logic.
4638
46392003-04-01 Robert Collins <rbtcollins@hotmail.com>
4640
4641 * main.cc (SIDWrapper): Manage SID memory.
4642 (HANDLEWrapper): Likewise for HANDLES.
4643 (NTSecurity): Worker class for set_default_sec().
4644 (set_default_sec): Move body into NTSecurity::setDefaultSecurity().
58b12a06
MB
4645 (NTSecurity::setDefaultSecurity): Eliminate goto out: via memory
4646 managing objects.
e46e15bf 4647
da0b54f3
MB
46482003-04-01 Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>
4649
4650 * cygwin.ico: Added two new resolutions, 64x64 and 72x72.
4651
3baca7c9
RC
46522003-03-29 Robert Collins <rbtcollins@hotmail.com>
4653
4654 * GUIDELINES: New file documenting code guidelines.
4655
11e37aca
MB
46562003-03-26 Max Bowsher <maxb@ukf.net>
4657
4658 * .cvsignore: Add cfgaux.
4659
18a3405d
RC
46602003-03-26 Robert Collins <rbtcollins@hotmail.com>
4661
11e37aca
MB
4662 * package_version.cc (_defaultversion::accessible): Override and make
4663 always false.
4664 (_packageversion::accessible): Fix a couple of logic bugs resulting in
4665 incorrect trues.
18a3405d
RC
4666 * package_version.h (_packageversion::accessible): Make virtual.
4667
39ba3555
MB
46682003-03-25 Igor Pechtchanski <pechtcha@cs.nyu.edu>
4669
4670 * threebar.h (WM_APP_START_POSTINSTALL): New message.
4671 (WM_APP_POSTINSTALL_THREAD_COMPLETE): New message.
4672 * threebar.cc (ThreeBarProgressPage::OnMessageApp):
4673 Add handling for WM_APP_START_POSTINSTALL and
4674 WM_APP_POSTINSTALL_THREAD_COMPLETE.
4675 * install.cc (do_install_thread): Set next_dialog to
4676 IDD_S_POSTINSTALL.
4677 * desktop.cc (DesktopSetupPage::OnFinish): Move the
4678 do_postinstall call to ThreeBarProgressPage::OnMessageApp.
4679 * script.h (Script::fullName): New member function.
4680 (Script::run): New member function.
4681 (Script::ETCPostinstall): New static member constant.
4682 * script.cc (Script::fullName): Implement.
4683 (Script::run): Implement.
4684 (Script::ETCPostinstall): Define.
4685 (Script::isAScript): Use ETCPostinstall instead of a
4686 hardcoded string constant.
4687 (run): Enable "#if 0"'d code.
4688 * postinstall.cc (Progress): New extern variable.
4689 (RunFindVisitor::visitFile): Add script to vector
4690 instead of running.
4691 (RunFindVisitor::_scripts): New member variable.
4692 (RunScript): New helper class for use in for_each.
4693 (do_postinstall_thread): Rename do_postinstall to. Add
4694 Progress bar and text setting. Add package count.
4695 (do_postinstall_reflector): New static function.
4696 (do_postinstall): Rename to do_postinstall_thread.
4697 Create a thread instead.
4698
1069407c
MB
46992003-03-18 Igor Pechtchanski <pechtcha@cs.nyu.edu>
4700
4701 * script.cc (run): Add file_out parameter.
4702 Redirect output of subprocess to file, creating the
4703 path if necessary. Minimize the script window.
4704 (run_script): Add optional to_log boolean parameter.
4705 If to_log, redirect output to temporary file and then
4706 import it into LOG_BABBLE.
4707 (OutputLog): New helper class.
4708 (operator<<): New operation on OutputLog.
4709 * script.h (run_script): Add optional to_log parameter.
4710 * postinstall.cc (RunFindVisitor::visitFile): Instruct
4711 run_script() to log script output.
4712 (do_postinstall): Ditto.
4713
84fd41a9
RC
47142003-03-20 Robert Collins <rbtcollins@hotmail.com>
4715
ca2b7505 4716 * package_meta.cc (packagemeta::set_action): The logic
84fd41a9
RC
4717 test for the default action was reversed.
4718
864a5ec1
MB
47192003-03-18 Igor Pechtchanski <pechtcha@cs.nyu.edu>
4720
4721 * postinstall.cc (do_postinstall): Filter out '*.done'.
4722 * FilterVisitor.h: New header file. Declare the
4723 FilterVisitor, Filter, and ExcludeNameFilter classes.
4724 * FilterVisitor.cc: New file. Implement FilterVisitor,
4725 Filter, and ExcludeNameFilter.
4726 * String++.h (String::matches): New instance function.
4727 * String++.cc (String::matches): Implement.
4728 (strmatch) Import and adapt for <buf,len> strings.
4729 * Makefile.am (setup_SOURCES): Add FilterVisitor.cc and
4730 FilterVisitor.h to value.
4731
560ac5e2
MB
47322002-03-18 Max Bowsher <maxb@ukf.net>
4733
4734 * LogFile.cc (LogFile::exit): Use CRT exit() instead of ExitProcess().
4735 Use passed exit_code even if been_here.
4736 Remove incorrect _CYGWIN_ preprocessor conditional.
4737
ad646f43
RC
47382003-03-16 Robert Collins <rbtcollins@hotmail.com>
4739
e0312c44
RC
4740 * package_db.h (PackageDBConnectedIterator): Typedef
4741 for connected loop detection collection iterator.
ca2b7505
CF
4742 * package_db.cc (ConnectedLoopDetector): An
4743 implementation of R.E. Tarjans strongly connected
e0312c44
RC
4744 set visitor algorithm.
4745 * postinstall.cc (do_postinstall): Use the new iterator
4746 for visiting postinstall scripts.
ad646f43
RC
4747
47482003-03-16 Robert Collins <rbtcollins@hotmail.com>
4749
4750 * install.cc: Introduce Installer class.
4751 (init_dialog): Rename to Installer::initDialog.
4752 (progress): Rename to Installer::progress.
4753 (standard_dirs): Rename to Installer::StandardDirs.
4754 (uninstall_one): Rename to Installer::uninstallOne.
4755 (replace_one): Rename to Installer::replaceOne.
ca2b7505 4756 (log_ror_failure): Rename to
e0312c44 4757 Installer::replaceOnRebootFailed.
ca2b7505 4758 (log_ror_success): Rename to
e0312c44 4759 Installer::replaceOnRebootSucceeded.
ad646f43
RC
4760 (install_one_source): Rename to Installer::installOneSource.
4761 Note script files as they are installed.
4762 * package_version.cc (packageversion::addScript): Implement.
4763 (packageversion::scripts): Implement.
ca2b7505 4764 * package_version.h (packageversion::addScript): Record the
e0312c44 4765 presence of a script.
ad646f43 4766 * script.h (Script): New class to track scripts.
e0312c44
RC
4767 * postinstall.cc (do_postinstall): Iterate through the
4768 package listed scripts before searching for scripts.
ca2b7505 4769 * String++.cc (String::substr): Second argument needed to
e0312c44 4770 be signed.
ca2b7505 4771 * String++.h (String::substr): Second argument needed to
e0312c44 4772 be signed.
ad646f43 4773
c0a46d04
MB
47742003-03-16 Max Bowsher <maxb@ukf.net>
4775
4776 * .cvsignore: Create, to ignore configure, aclocal.m4, Makefile.in and
4777 autom4te.cache.
4778
3d7ae5a2
MB
47792003-03-16 Max Bowsher <maxb@ukf.net>
4780
4781 * UserSettings.cc (UserSettings::Instance): Remove premature return.
4782
92f9402a
RC
47832003-03-15 Robert Collins <rbtcollins@hotmail.com>
4784
4785 * script.cc (run): Rename variable b to createSucceeded.
4786
47872003-03-15 Igor Pechtchanski <pechtcha@cs.nyu.edu>
4788
4789 * script.cc (run): Close unneeded handles.
4790
b49f570f
RC
47912003-03-15 Robert Collins <rbtcollins@hotmail.com>
4792
4793 * configure: Remove.
4794 * aclocal.m4: Remove.
4795 * Makefile.in: Remove.
4796 * cfgaux: Remove.
4797 * cfgaux/compile: Remove.
4798 * cfgaux/config.guess: Remove.
4799 * cfgaux/config.sub: Remove.
4800 * cfgaux/depcomp: Remove.
4801 * cfgaux/install-sh: Remove.
4802 * cfgaux/ltmain.sh: Remove.
4803 * cfgaux/missing: Remove.
4804 * cfgaux/mkinstalldirs: Remove.
4805
b6001c0d
MB
48062003-03-14 Igor Pechtchanski <pechtcha@cs.nyu.edu>
4807
4808 * install.cc (replace_one): Clear Text3.
4809
46ccc05f
MB
48102003-03-14 Igor Pechtchanski <pechtcha@cs.nyu.edu>
4811
4812 * install.cc (install_one_source): Add logging for successful
4813 replace-on-reboot scheduling. Factor out duplicate code.
4814 Set rebootneeded on Win9x.
4815 (log_ror_failure): New static function.
4816 (log_ror_success): New static function.
4817
c27b09ba
RC
48182003-03-14 Robert Collins <rbtcollins@hotmail.com>
4819
ca2b7505 4820 * choose.cc (ChooserPage::OnNext): Fix iterator bug. Reported by
c27b09ba
RC
4821 Igor Pechtchanski <pechtcha@cs.nyu.edu>.
4822
a081d4ff
MB
48232003-03-13 Max Bowsher <maxb@ukf.net>
4824
4825 * Update included zlib to 1.1.4.
4826
f430003c
RC
48272003-03-13 Robert Collins <rbtcollins@hotmail.com>
4828
46ccc05f
MB
4829 * install.cc (do_install_thread): Use a query method rather than temp
4830 variable do_skip.
f430003c 4831
46ccc05f 48322003-03-09 Pavel Tsekov <ptsekov@gmx.net>
f430003c 4833
ca2b7505 4834 * install.cc (do_install_thread): Use IDS_SKIP_PACKAGE
f430003c
RC
4835 instead of IDS_CORRUPT_PACKAGE when asking the user to take
4836 action if the hash verification check fails for a source package.
4837 Do not increase the value of 'total_bytes' variable if the
4838 user chooses to skip over a package, which failed the hash
4839 verification.
4840
48c7d667
MB
48412003-03-10 Max Bowsher <maxb@ukf.net>
4842
4843 * Makefile.am: Add foreign to AUTOMAKE_OPTIONS.
4844
aaeee283
RC
48452003-03-10 Robert Collins <rbtcollins@hotmail.com>
4846
4847 * UserSettings.cc (UserSettings::init): Really initialize all members.
4848
ead15931
RC
48492003-03-10 Robert Collins <rbtcollins@hotmail.com>
4850
4851 * Exception.h: Add a logic error exception id.
4852 * Makefile.am: Add new sources.
4853 * UserSettings.cc: New file.
4854 * UserSettings.h: New file.
4855 * UserSetting.cc: New file.
4856 * UserSetting.h: New file.
4857 * site.h: Add a SiteSetting as example of a UserSetting.
46ccc05f
MB
4858 * site.cc (ChosenSites): Add a instance of SiteSetting to trigger
4859 registration.
ead15931 4860
c1754473
RC
48612003-03-10 Robert Collins <rbtcollins@hotmail.com>
4862
46ccc05f
MB
4863 * compress_bz.cc (compress_bz::read): Adjust incorrect assignment of
4864 lasterr.
c1754473
RC
4865 (compress_bz::error): Return lasterr which will indicate any error.
4866
52620058
RC
48672003-03-10 Robert Collins <rbtcollins@hotmail.com>
4868
4869 * choose.h (ChooserPage): Override OnActivate.
46ccc05f
MB
4870 * choose.cc (ChooserPage::OnActivate): Refresh the current view when
4871 activating the dialog.
52620058 4872
6e754226
RC
48732003-03-09 Robert Collins <rbtcollins@hotmail.com>
4874
46ccc05f
MB
4875 * package_version.cc (_defaultversion::pick(bool)): Override this and
4876 do nothing.
4877 (packageversion::pick(bool): Use a mutator function rather than direct
4878 member access.
4879 * package_version.h (_packageversion::pick(bool)): Move method from
4880 _packageversion.
6e754226 4881
970149e8
RC
48822003-02-16 Pavel Tsekov <ptsekov@gmx.net>
4883
ca2b7505 4884 * install.cc (install_one_source): Remove the MD5 verification
970149e8
RC
4885 code.
4886 Delay the creation of the package listing file.
ca2b7505 4887 (do_install_thread): Check the hashes for packages which need
970149e8
RC
4888 to be installed before the uninstall step. Allow the user to
4889 skip over packages, which fail the hash verification.
4890 (md5_one): Define new function.
4891 * res.rc (IDS_SKIP_PACKAGE): New string resource.
4892 * resource.h (IDS_SKIP_PACKAGE): New macro definition.
4893
f37b36a3
RC
48942003-02-16 Pavel Tsekov <ptsekov@gmx.net>
4895
4896 * Exception.h: Declare new constructor.
4897 (Exception::_message): Change the type from 'const char *' to
4898 'class String'.
4899 (Exception::~Exception): Implement destructor (make gcc shut up).
4900 * Exception.cc: Implement new constructor.
4901 (Exception::what): Use String::cstr_oneuse ().
4902 * download.cc (validateCachedPackage): Use the constructor, which
4903 takes String& as its second argument, when throwing objects
4904 of type Exception.
4905 (check_for_cached): Ditto.
4906 * install.cc (install_one_source): Ditto.
4907
eef9ea26
RC
49082003-02-01 Igor Pechtchanski <pechtcha@cs.nyu.edu>
4909
4910 * res.rc (IDS_INSTALL_INCOMPLETE): Change hard-coded
4911 log filename to %s.
4912 (IDS_MISSING_LOG): New string resource.
4913 * resource.h (IDS_MISSING_LOG): New resource.
4914 * LogFile.cc (LogFile::exit): Pass log filename for
4915 LOG_BABBLE to note().
4916 (LogFile::getFileName): New function.
4917 * LogFile.h (LogFile::getFileName): New function.
4918
514b100e
RC
49192003-02-01 Igor Pechtchanski <pechtcha@cs.nyu.edu>
4920
4921 * String++.cc: Don't include concat.h.
4922 * Makefile.am: Remove concat.cc and concat.h references.
4923 * concat.h: Remove.
4924 * concat.cc: Remove.
4925
56c60dcc
MB
49262003-03-09 Max Bowsher <maxb@ukf.net>
4927
4928 * bootstrap.sh: Add sanity check of current directory.
4929 Recurse into libgetopt++ if needed.
4930
4f4b9def
RC
49312003-03-09 Robert Collins <rbtcollins@hotmail.com>
4932
4933 * Update readme of bugs and wishes.
4934
ed6137e5
MB
49352003-03-05 Max Bowsher <maxb@ukf.net>
4936
4937 * netio.cc (save_dialog): Allocate an empty string if the password is
4938 null, so that an empty password is accepted elsewhere in setup.
4939 (check_if_enable_ok): An empty password is OK.
4940
e0aec95e
MB
49412003-03-05 Brian Keener <bkeener@thesoftwaresource.com>
4942
ed6137e5 4943 * PickView.cc (PickView::views): Add two new views for Skipped
e0aec95e
MB
4944 packages and Installed Packages not requiring update.
4945 (PickView::set_headers () ): Ditto.
4946 (PickView::clear_view (void) ): Ditto.
4947 (PickView::views::caption () ): Add two new captions for the new
4948 views added for Skipped and Installed Packages.
4949 (PickView::scroll () ): Modify Scroll Bar property to Disable
ed6137e5 4950 instead of disappearing when there is nothing to Scroll.
e0aec95e
MB
4951 * PickView.h: Add two new views for Skipped packages and Installed
4952 packages to public class view.
4953 * choose.cc (list_click () ): Modify Scroll Bar property to Disable
ed6137e5 4954 instead of disappearing when there is nothing to Scroll.
e0aec95e
MB
4955 (listview_proc () ): Ditto.
4956 (set_view_mode): Add two new views for Skipped Packages and Installed
4957 Packages not requiring update. Modify Scroll Bar property to Disable
4958 instead of disappearing when there is nothing to scroll.
4959 * res.rc (IDD_CHOOSE): Reposition Radio Buttons, View Selection
4960 Button and View Button Caption to make room for longer captions.
4961
c7fb2f36
MB
49622003-03-04 Max Bowsher <maxb@ukf.net>
4963
4964 * compress_gz.cc (compress_gz::construct):
4965 Fix broken checkin dated 2002-07-03.
4966
d5be1d23
MB
49672003-02-28 Max Bowsher <maxb@ukf.net>
4968
4969 * main.cc (set_default_sec): Add logging.
4970
adaa168a
MB
49712003-02-28 Pierre Humblet <pierre.humblet@ieee.org>
4972
4973 * main.cc (set_default_dacl): Replace with set_default_sec.
4974 (set_default_sec): Attempt to change the default group to
4975 Users or Administrators if it is None, in addition to setting
4976 Everyone in the default DACL.
4977 (main): Call set_default_sec instead of set_default_dacl.
4978
3a8d1127
MB
49792003-01-31 Max Bowsher <maxb@ukf.net>
4980
4981 * install.cc (install_one_source): Fix spacing in log message.
4982
c7230a28
MB
49832003-01-19 Max Bowsher <maxb@ukf.net>
4984
4985 * resource.h (IDC_CHOOSE_KEEP): Define.
4986 * res.rc (IDD_CHOOSE): Add radio button IDC_CHOOSE_KEEP.
4987 * choose.cc (create_listview): Add IDC_CHOOSE_KEEP to ta[].
4988 (ChooserPage::OnMessageCmd): Handle new IDC_CHOOSE_KEEP button.
4989
ac949c48
MB
49902003-01-15 Max Bowsher <maxb@ukf.net>
4991
4992 * mkdir.cc [_CYGWIN_]: Implement what was pseudocode.
4993 * io_stream.h [__CYGWIN__]: Don't typedef ssize_t.
4994 * proppage.h: Include "win32.h" instead of <windows.h>.
4995
4f618d88
MB
49962003-01-15 Max Bowsher <maxb@ukf.net>
4997
4998 * mount.cc [MAINTAINER_FEATURES]: Add --override-registry-name option.
4999
1606c4e9
MB
50002002-12-11 Abraham Backus <abraham@backus.com>
5001
5002 * nio-http.cc (NetIO_HTTP::NetIO_HTTP): Leave port out of Host header,
5003 unless non-default.
5004
c4e25cde
MB
50052002-12-11 Max Bowsher <maxb@ukf.net>
5006
5007 * package_meta.cc: Change 'endl' to 'endLog' as appropriate.
5008 * package_version.cc: Ditto.
5009
bfdf6ac2
MB
50102002-09-22 Max Bowsher <maxb@ukf.net>
5011
5012 * PickView.cc (pkg_headers): Rename column 'Category' to 'Categories'.
5013 * package_meta.h (packagemeta::getReadableCategoryList): Declare.
5014 * package_meta.cc (packagemeta::getReadableCategoryList): Implement.
5015 * PickPackageLine.cc (PickPackageLine::paint): Change to use
5016 getReadableCategoryList.
5017 Fix x2 argument to IntersectClipRect.
5018
63c82708
RC
50192002-11-25 Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>
5020
5021 * window.h (Window::GetWindowRect): New method declaration.
5022 (Window::GetClientRect): Ditto.
5023 (Window::MoveWindow): Ditto.
5024 (Window::ScreenToClient): Ditto.
5025 * window.cc (REFLECTION_INFO): Remove.
5026 (ReflectionInfo): Remove.
5027 (Window::FirstWindowProcReflector): Use the WM_NCCREATE message instead
5028 of the horrid REFLECTION_INFO hack to hook the Window instance to the
5029 HWND instance.
5030 (Window::WindowProcReflector): Use GetWindowLongPtr() now that it's
5031 available.
5032 (Window::Create): Change to use new WM_NCCREATE reflection procedure
5033 above.
5034 (Window::GetWindowRect): New method.
5035 (Window::GetClientRect): New method.
5036 (Window::MoveWindow): New method.
5037 (Window::CenterWindow): Use new methods, also specify "::" for some non-
5038 member functions with the same names.
5039 (Window::ScreenToClient): New method.
5040
58983805
RC
50412002-11-26 Robert Collins <rbtcollins@hotmail.com>
5042
5043 * AntiVirus.cc: Change the short option again! It's now 'A'.
5044 * desktop.cc (etc_profile): Remove.
5045 (make_etc_profile): Remove.
5046 (uexists): Remove.
5047 (make_passwd_group): Remove.
5048 (do_desktop_setup): Don't call removed functions.
5049
b2028692
RC
50502002-11-26 Robert Collins <rbtcollins@hotmail.com>
5051
5052 * nio-ftp.cc (NetIO_FTP::NetIO_FTP): Fix my botched application of
5053 Marcel's patch.
5054
2d8e4784
RC
50552002-07-08 Marcel Telka <marcel@telka.sk>
5056
b2028692 5057 * nio-ftp.cc (NetIO_FTP::NetIO_FTP): Fixed decoding of the FTP
2d8e4784
RC
5058 reply (code 227) to the PASV command.
5059
3a87705e
RC
50602002-11-26 Robert Collins <rbtcollins@hotmail.com>
5061
5062 * IniDBBuilderPackage.cc (IniDBBuilderPackage::~IniDBBuilderPackage):
5063 Sort the packages db once all the new packages have been added.
5064 * IniDBBuilderPackage.h (IniDBBuilderPackage::~IniDBBuilderPackage):
5065 Declare this.
5066
bd4e91a7
RC
50672002-11-26 Robert Collins <rbtcollins@hotmail.com>
5068
5069 * choose.cc (ChooserPage::OnNext): Remove extracted comment.
5070 * package_version.cc (processOneDependency): Return once selecting
5071 a package (bugfix to prevous rework).
5072 Log if the default trust fails the package specification.
5073
f416a2b6
RC
50742002-11-26 Robert Collins <rbtcollins@hotmail.com>
5075
5076 * package_meta.h (packagemeta::logAllVersions): Declare.
5077 (packagemeta::trustLabel): Ditto.
ca2b7505 5078 * choose.cc (ChooserPage::OnNext): Get each package to log all it's
f416a2b6
RC
5079 versions.
5080 * package_meta.cc (packagemeta::logAllVersions): Implement.
5081 (packagemeta::trustLabel): Ditto.
5082
14485ab2
RC
50832002-11-25 Robert Collins <rbtcollins@hotmail.com>
5084
5085 * AntiVirus.cc: Change 'd' to 'D' to fix command line conflict.
5086
f9e903a3
RC
50872002-11-25 Robert Collins <rbtcollins@hotmail.com>
5088
5089 * AntiVirus.cc: New file.
5090 * AntiVirus.h: Ditto.
5091 * LogFile.cc: Include AntiVirus.h for class definition.
5092 (LogFile::exit): Trigger AntiVirus::AtExit().
5093 * MakeFile.am(setup_SOURCES): Add AntiVirus files.
5094 * autoload.c: Declare Service Control Manager related API's.
5095 * main.cc: Include AntiVirus.h for class definition.
5096 (main): Add the AntiVirus page in.
5097 * res.rc: Define IDD_VIRUS.
5098 * resource.h: Define IDD_VIRUS related control ID's.
5099 * splash.h: Override OnNext.
5100 * splash.cc: Only show AntiVirus page when one has been detected.
5101 * source.cc: Ditto.
5102
05c5b8a6
RC
51032002-11-25 Robert Collins <rbtcollins@hotmail.com>
5104
5105 * package_version.cc (DependencyProcessor): Create convenience class.
5106 (select): Extract version selection method.
5107 (processOneDependency): Check for a satisfactory trusted version
5108 first.
5109
51102002-11-10 Robert Collins <rbtcollins@hotmail.com>
15004270
RC
5111
5112 * main.cc (main): Use the factory for LogFile.
5113 * String++.cc: Update to use sstream.
58b12a06 5114 (String::String): Use a ostringstream for libC++ 3.2.
15004270
RC
5115 * LogFile.h (LogFile): Make createLogFile static.
5116
05c5b8a6 51172002-11-10 Robert Collins <rbtcollins@hotmail.com>
51629951
RC
5118
5119 * main.cc (main): Oops, pass LogSingleton a reference, not a pointer.
5120
666bf37d
RC
51212002-11-04 Max Bowsher <maxb@ukf.net>
5122
5123 * Exception.h (Exception::what): Add throw() specification,
5124 to agree with libstdc++-v3.
5125 * Exception.cc (Exception::what): Ditto.
5126 * IniDBBuilderPackage.h: Add 'std::' where needed.
5127 * PickCategoryLine.h: Ditto.
5128 * category.h: Ditto.
5129 * package_db.h: Ditto.
5130 * package_meta.h: Ditto.
5131 * package_source.h: Ditto.
5132 * package_version.h: Ditto.
5133 * site.h: Ditto.
5134 * win32.h: Define NOMINMAX before including <windows.h>.
5135 * package_meta.cc: Add 'using namespace std;'.
5136 (packagemeta::set_requirements): Remove default parameter values
5137 from definition (gcc3 likes them only in declaration).
5138 * package_version.cc: Add 'using namespace std;'.
5139 (packageversion::set_requirements): Remove default parameter
5140 values from definition (gcc3 likes them only in declaration).
5141
37decc22
RC
51422002-11-10 Robert Collins <rbtcollins@hotmail.com>
5143
5144 * compress_bz.cc: Don't include bzlib.h directly, the compress_bz.h
5145 header includes it.
5146
51472002-11-04 Max Bowsher <maxb@ukf.net>
5148
ca2b7505
CF
5149 * compress_bz.h: #undef small before including bzlib.h - if we are
5150 going to hide the fact that we are _WIN32 from bzlib, then we need
37decc22
RC
5151 to #undef small for it as well (bad windows.h clash).
5152
a55c8f45
RC
51532002-11-10 Robert Collins <rbtcollins@hotmail.com>
5154
5155 * localdir.cc: Update the extern LogFile to be a pointer.
5156 (save_local_dir): Change . to -> for the above.
5157 * main.cc (theFile): Change from an instance to a pointer.
5158 (main): Change . to -> for the above.
5159
c83c52d8
RC
51602002-11-10 Robert Collins <rbtcollins@hotmail.com>
5161
5162 * LogFile.cc: use 'std::' where needed throughout.
5163 (LogFile::createLogFile): Implement a factory for LogFile.
5164 (LogFile::LogFile): Update for use with the factory, and to
5165 handle the latest g++ library changes.
5166 (LogFile::operator()): Ditto.
5167 (LogFile::endEntry()): Ditto.
5168 * LogFile.h: Ditto.
5169 * LogSingleton.cc: Ditto.
5170 * LogSingleton.h: Ditto.
5171
318af134
RC
51722002-11-04 Max Bowsher <maxb@ukf.net>
5173
5174 * String++.h: Add 'std::' where needed.
5175
6625e635
RC
51762002-11-04 Max Bowsher <maxb@ukf.net>
5177
5178 * IniDBBuilderPackage.cc: Add 'using namespace std;'.
5179 * IniParseFindVisitor.cc: Ditto.
5180 * LogFile.cc: Ditto.
5181 * LogSingleton.cc: Ditto.
5182 * PickView.cc: Ditto.
5183 * String++.cc: Ditto.
5184 * choose.cc: Ditto.
5185 * download.cc: Ditto.
5186 * find.cc: Ditto.
5187 * install.cc: Ditto.
5188 * io_stream.cc: Ditto.
5189 * io_stream_file.cc: Ditto.
5190 * package_db.cc: Ditto.
5191 * root.cc: Ditto.
5192 * site.cc: Ditto.
5193
955bf437
RC
51942002-11-04 Max Bowsher <maxb@ukf.net>
5195
5196 * LogSingleton.h: Add 'std::' where needed.
5197
b34fb59f
RC
51982002-11-04 Max Bowsher <maxb@ukf.net>
5199
5200 * archive_tar_file.cc: Include <algorithm>.
5201 Change min(a,b) to std::min(a,b)
5202 * compress_bz.cc: Ditto.
5203 * compress_gz.cc: Ditto.
5204
326fbcb8
RC
52052002-11-04 Max Bowsher <maxb@ukf.net>
5206
5207 * res.rc: Change a #-comment (invalid) to a //-comment.
5208
4361306f
RC
52092002-11-04 Max Bowsher <maxb@ukf.net>
5210
5211 * Makefile.am (%.o: %.rc): Make windres use $(CC) not hardcoded gcc.
58b12a06
MB
5212 (inilint_LDADD): Remove -lstd++.
5213 (setup_LDADD): Ditto.
4361306f 5214
05d7b7f2
RC
52152002-09-22 Max Bowsher <maxb@ukf.net>
5216
5217 * IniDBBuilderPackage.cc: Update DEBUG code to current class
5218 layout.
5219
f2ff9838
RC
52202002-09-21 Robert Collins <rbtcollins@hotmail.com>
5221
5222 * choose.h: Add OnUnattended method.
5223 * desktop.cc (DesktopSetupPage::OnInit): Allow fine grained
5224 control via command line options.
5225 (DesktopSetupPage::OnUnattended): Implement.
5226 (DesktopSetupPage::OnMessageApp): Implement.
5227 * desktop.h (DesktopSetupPage::OnUnattended): declare.
5228 (DesktopSetupPage::OnMessageApp): Ditto.
5229 * download.cc (do_download_thread): Support unattended mode.
5230 * install.cc (do_install_thread): Ditto.
5231 * localdir.h: Ditto.
5232 * main.cc (main): Ditto.
5233 * net.cc (NetPage::OnUnattended): Ditto.
5234 * net.h (NetPage::OnUnattended): Declare.
5235 * proppage.cc (PropertyPage::DialogProc): Support unattended mode.
5236 * proppage.h (PropertyPage::OnUnattended): Declare.
5237 * root.cc (RootPage::OnInit): Support unattended mode.
5238 (RootPage::OnUnattended): Implement.
5239 * root.h (RootPage::OnUnattended): Declare.
5240 * site.cc (register_saved_site): Extract Method from get_saved_sites.
5241 (get_saved_sites): Remove common code for adding a site.
5242 (SitePage::OnInit): Support unattended mode.
5243 (SitePage::OnUnattended): Implement.
5244 * site.h (SitePage::OnUnattended): Declare.
5245 * source.cc (SourcePage::OnActivate): Support unattended mode.
5246 (SourcePage::OnUnattended): Implement.
5247 * source.h (SourcePage::OnUnattended): Declare.
5248 * splash.h (SplashPage::OnUnattended): Declare.
5249 * state.cc (unattended_mode): Declare.
5250 * state.h (unattended_mode): Declare.
5251 * threebar.h (ThreeBarProgressPage::OnUnattended): New method.
5252
707f3d66
RC
52532002-09-21 Robert Collins <rbtcollins@hotmail.com>
5254
5255 * res.rc: Commit Harry Johnston's dialog caption patch. From July.
5256
ec13f13c
RC
52572002-07-15 Robert Collins <rbtcollins@hotmail.com>
5258
5259 * package_version.cc (packageversion::sources): Implement this.
5260 * download.cc (do_download_thread): Support multiple files per package.
5261
e5662e0a
RC
52622002-07-15 Robert Collins <rbtcollins@hotmail.com>
5263
5264 * package_version.h (packageversion::sources): Support multiple files in
5265 a single package version.
5266 * package_version.cc (_packageversion::accessible): Ditto.
5267 (packageversion::source): Ditto.
5268
60daae94
RC
52692002-07-15 Robert Collins <rbtcollins@hotmail.com>
5270
5271 * iniparse.y: Implement support for multiple source files for a source
5272 package.
5273 * IniDBBuilder.h (IniDBBuilder::buildSourceFile): Ditto.
5274 * IniDBBuilderPackage.h (IniDBBuilder::buildSourceFile): Ditto.
5275 * IniDBBuilder.cc (IniDBBuilder::buildSourceFile): Ditto.
ca2b7505 5276 * IniDBBuilderPackage.cc (IniDBBuilder::buildSourceFile): Implement a
60daae94
RC
5277 stub as preparation.
5278
4f591f9d
RC
52792002-07-13 Robert Collins <rbtcollins@hotmail.com>
5280
ca2b7505 5281 * PickPackageLine.cc (PickPackageLine::click): Set requirements for
4f591f9d
RC
5282 packages under all circumstances - slightly higher overheader, simpler
5283 code.
ca2b7505 5284 * download.cc (do_download_thread): Correctly download source
4f591f9d
RC
5285 packages.
5286 * package_meta.cc (checkForInstalled): Remove.
5287 (checkForUpgradeable): Ditto.
5288 (checkForSatisfiable): Ditto.
5289 (processOneDependency): Ditto.
5290 (packagemeta::set_requirements): Move guts to packageversion.
5291 * package_version.cc (checkForInstalled): Copied from package_meta.cc.
5292 (checkForUpgradeable): Ditto.
5293 (checkForSatisfiable): Ditto.
5294 (processOneDependency): Ditto.
5295 (packageversion::set_requirements): Ditto.
5296 * package_version.h (packageversion::set_requirements): Declare.
5297
b1ff53ed
RC
52982002-07-13 Robert Collins <rbtcollins@hotmail.com>
5299
5300 * IniDBBuilder.cc (IniDBBuilder::buildBeginBuildDepends): Implement.
5301 (IniDBBuilder::buildBeginBinary): Implement.
5302 * IniDBBuilder.h (IniDBBuilder::buildBeginBuildDepends): Declare.
5303 (IniDBBuilder::buildBeginBinary): Ditto.
5304 * IniDBBuilderPackage.cc (IniDBBuilderPackage::buildBeginBuildDepends):
5305 Implement.
5306 (IniDBBuilderPackage::buildBeginBinary): Ditto.
5307 * IniDBBuilderPackage.h (IniDBBuilderPackage::buildBeginBuildDepends):
5308 Declare.
5309 (IniDBBuilderPackage::buildBeginBinary): Ditto.
5310 * inilex.l: Recognise Build-Depends-Indep, [,], >, < and remove
5311 T_UNKNOWN.
5312 * iniparse.y: Full support for parsing a debian Sources file in-line in
5313 setup.ini.
5314 * package_version.cc (packageversion::binaries): Implement.
5315 * package_version.h (packageversion::binaries): Declare list of what
5316 packages are created from a given source package.
5317 (_packageversion::binaries): Ditto.
5318
233a3e17
RC
53192002-07-10 Robert Collins <rbtcollins@hotmail.com>
5320
5321 * iniparse.y: Add basis for support for parsing a debian Sources file.
5322 * inilex.l: Ditto.
5323
cfae3b8d
RC
53242002-07-09 Robert Collins <rbtcollins@hotmail.com>
5325
5326 Change custom container code for packagedb::packages to STL containers
5327 throughout.
5328 * IniDBBuilderPackage.cc: Ditto.
5329 * PickView.cc: Ditto.
5330 * choose.cc: Ditto.
5331 * desktop.cc: Ditto.
5332 * download.cc: Ditto.
5333 * install.cc: Ditto.
5334 * package_db.cc: Ditto.
5335 * package_db.h: Ditto.
5336 * Makefile.am: Remove list.h references.
5337 * list.h: Remove.
5338
09130e58
RC
53392002-07-08 Max Bowsher <maxb@ukf.net>
5340
5341 * PickView.cc (PickView::PickView): Set font of package list header to
5342 the same as used in the rest of the package list.
5343
a75ed5ce
RC
53442002-07-08 Robert Collins <rbtcollins@hotmail.com>
5345
5346 * install.cc (NoReplaceOnReboot): New command line option to prevent
5347 replacing in use files.
5348 (install_one_source): Check the option and use it.
5349 * README: Update TODO lists.
5350
0cf68afd
RC
53512002-07-08 Robert Collins <rbtcollins@hotmail.com>
5352
ca2b7505 5353 * PickCategoryLine.cc: Change bucket to use STL container syntax
0cf68afd
RC
5354 throughout.
5355 (PickCategoryLine::paint): Use new Category type syntax.
ca2b7505 5356 * PickCategoryLine.h: Use STL vectors rather than custom containers
0cf68afd
RC
5357 throughout.
5358 * IniDBBuilderPackage.cc (IniDBBuilderPackage::buildPackageCategory):
5359 Use new add_category syntax.
5360 * PickView.cc (PickView::insert_pkg): Use new Category type syntax.
5361 (PickView::insert_category): Ditto.
5362 (PickView::init_headers): Ditto.
5363 * category.cc: Trim obsolete code.
ca2b7505 5364 * category.h: Replace interconnecting class with a typedef to
0cf68afd
RC
5365 facilitate leveraging STL maps.
5366 * choose.cc (fill_missing_category): Use updated pkg.add_category
5367 syntax.
5368 (default_trust): Use new Category type syntax.
5369 (set_view_mode): Ditto.
5370 (create_listview): Ditto.
5371 * package_db.cc (categories): Ditto.
5372 * package_db.h: Update headers list to include needed headers.
5373 (packagedb::categories): Replace custom list with STL map.
5374 * package_meta.cc: Use new Category type syntax throughout.
5375 (packagemeta::add_category): Implement new syntax.
5376 * package_meta.h: Remove commented out source.
5377 (packagemeta::add_category): Update syntax to decouple interface from
5378 packagedb.
5379
89374d4a
CF
53802002-07-06 Christopher Faylor <cgf@redhat.com>
5381
5382 * site.cc (do_download_site_info_thread): Correct spelling error.
5383
405d7186
RC
53842002-07-06 Robert Collins <rbtcollins@hotmail.com>
5385
5386 * PickCategoryLine.h: Include required header list.h.
5387 * PickPackageLine.cc (PickPackageLine::paint): Adjust to use STL
5388 containers for listing of packages per category and vice verca.
5389 * PickView.cc (PickView::insert_pkg): Ditto.
5390 (PickView::insert_category): Ditto.
5391 * String++.h (String::caseless): STL helper to allow trivial containers
5392 of Strings with case insensitive comparisons.
5393 * category.h: Adjust to use STL containers for listing of packages per
5394 category and vice verca.
5395 * choose.cc (fill_missing_category): Ditto.
5396 (default_trust): Ditto.
5397 (ChooserPage::OnNext): Ditto.
5398 * package_meta.cc (CategoryPackage::~CategoryPackage): Remove.
5399 (packagemeta::packagemeta): Adjust for new category list name.
5400 (packagemeta::~packagemeta): Adjust to use STL containers for listing
5401 of packages per category and vice verca.
5402 (packagemeta::set_action): Ditto.
5403 * package_meta.h (CategoryPackage): Remove.
5404 (packagemeta): Adjust to use STL containers for listing of packages per
5405 category and vice verca.
5406
080bec6e
RC
54072002-07-05 Robert Collins <rbtcollins@hotmail.com>
5408
5409 * io_stream.cc: Use STL containers rather than custom ones.
5410 (io_stream::registerProvider): Ditto.
5411 (findProvider): Ditto.
5412
3f34f364
RC
54132002-07-05 Robert Collins <rbtcollins@hotmail.com>
5414
5415 * IniDBBuilderPackage.cc (IniDBBuilderPackage::buildPackageSource):
5416 Use STL collections for download site collections.
5417 (IniDBBuilderPackage::add_correct_version): Ditto.
5418 (IniDBBuilderPackage::process_src): Ditto.
5419 * PickPackageLine.cc (PickPackageLine::click): Use the packageversion
5420 accessible() call to abstract package availability.
ca2b7505 5421 * choose.cc (scanAVersion): Use STL collections for download site
3f34f364
RC
5422 collections.
5423 * download.cc (check_for_cached): Ditto.
5424 (download_one): Ditto.
5425 * package_meta.cc (packagemeta::set_action): Use the packageversion
5426 accessible() call to abstract package availability.
5427 * package_source.h: Use STL containers rather than custom containers.
5428 (site): Create a == operator to allow STL container use.
5429 (packagesource::sites): Use STL containers rather than custom
5430 containers.
5431 * package_version.cc (_packageversion::accessible): Use STL containers
5432 for download site containers.
5433
e2cdf72c
RC
54342002-07-05 Robert Collins <rbtcollins@hotmail.com>
5435
5436 * LogFile.cc: Use STL containers rather than custom containers.
5437 (filedef): Create == and < operators for STL use.
5438 (files): Convert to an STL set.
5439 (LogFile::setFile): Use STL operations on files.
5440 (LogFile::exit): Ditto.
5441
3bac26a1
RC
54422002-07-05 Robert Collins <rbtcollins@hotmail.com>
5443
5444 * ini.cc (do_remote_ini): Use STL collection for site collection.
5445 * site.cc: Include site.h first to ensure it's parsable standalone.
5446 Use STL algorithms.
5447 (site_list): Convert to an STL container.
5448 (all_site_list): Ditto.
5449 (site_list_type::site_list_type): Implement copy constructor.
5450 (site_list_type::operator=): Implement assignment operator.
5451 (site_list_type::operator ==): Implement.
5452 (site_list_type::operator <): Ditto.
5453 (save_dialog): Use STL collection calls for site collection.
5454 (save_site_url): Ditto.
5455 (get_site_list): Ditto.
5456 (get_saved_sites): Ditto.
5457 (do_download_site_info_thread): Ditto.
5458 (SitePage::OnNext): Ditto.
5459 (SitePage::PopulateListBox): Ditto.
5460 (SitePage::OnMessageCmd): Ditto.
5461 * site.h: Use STL vectors instead of custom code.
5462 (site_list_type::site_list_type): Declare.
5463 (site_list_type::operator=): Ditto.
5464 (site_list_type::operator ==): Ditto.
5465 (site_list_type::operator !=): Ditto.
5466 (site_list_type::operator <): Ditto.
5467 (site_list_type::operator <=): Ditto.
5468 (site_list_type::operator >): Ditto.
5469 (site_list_type::operator >=): Ditto.
5470 (site_list): Convert to an STL container.
5471 (all_site_list): Ditto.
5472
528a8edb
RC
54732002-07-05 Robert Collins <rbtcollins@hotmail.com>
5474
5475 * choose.cc (default_trust): Check package accessibility before
5476 triggering an install. (Suggested by Pavel).
5477
54782002-07-03 Pavel Tsekov <ptsekov@gmx.net>
5479
5480 * compress_gz.cc (compress_gz::construct): Always initialize key members
5481 to ensure the destructor does the right thing.
5482
4e868a01
RC
54832002-07-03 Pavel Tsekov <ptsekov@gmx.net>
5484
5485 * filemanip.cc (parse_filename): Do not try to parse empty
5486 strings (filenames).
5487 * package_db.cc (packagedb::packagedb): For each line check if sscanf()
5488 extracted good package name and filename.
5489
7f2b9277
RC
54902002-07-03 Robert Collins <rbtcollins@hotmail.com>
5491
5492 * package_meta.cc (packagemeta::set_requirements): Automatically select
ca2b7505 5493 version of dependent packages that satisfies the requirements.
7f2b9277
RC
5494 Use processOneDependency to trigger the install of those packages.
5495 (checkForInstalled): Check that the package remains installed.
5496 (processOneDependency): Helper function for dependent packages.
5497 * IniDBBuilderPackage.cc (IniDBBuilderPackage::buildPackage): Add more
5498 debug information.
5499 Clear out all current state on new packages.
ca2b7505 5500 (IniDBBuilderPackage::add_correct_version): Copy the dependency list
7f2b9277
RC
5501 across.
5502
84c4f5d1
RC
55032002-07-02 Robert Collins <rbtcollins@hotmail.com>
5504
5505 * Makefile.am (inilint_SOURCES): Add PackageSpecification sources.
5506 nb: inilint is still incomplete, as the packageversion code is not
5507 ready for database-less linking.
5508 * site.cc (get_site_list): When the same site is reentered by the user
5509 replace the old one. (Suggested by John Marshall).
5510
64cd7f94
RC
55112002-07-02 Robert Collins <rbtcollins@hotmail.com>
5512
5513 * IniDBBuilderPackage.cc (IniDBBuilderPackage::buildPackageSource):
5514 Clear out package selections when generating implicit source packages.
5515 * PackageSpecification.cc (PackageSpecification::satisfies): Implement.
5516 (PackageSpecification::_operators::satisfies): Implement.
5517 * PackageSpecification.h (PackageSpecification::_operators::satisfies):
5518 Worker function for testing versions.
5519
3c196821
RC
55202002-07-01 Robert Collins <rbtcollins@hotmail.com>
5521
5522 * IniDBBuilder.cc (IniDBBuilder::buildPackageRequirement): Remove.
5523 * IniDBBuilder.h (IniDBBuilder::buildPackageRequirement): Ditto.
5524 * IniDBBuilderPackage.cc: Use the STL algorithms.
5525 Change cpv to cbpv throughout. Adjust -> to ., and use the new accessor
5526 functions for the same variable throughout.
5527 (IniDBBuilderPackage::IniDBBuilderPackage): Initialise new members.
5528 (IniDBBuilderPackage::buildPackage): Use new cygpackage syntax,
5529 and set an empty source package.
5530 (IniDBBuilderPackage::buildPackageInstall): Use the new source member
5531 to record an install package.
5532 (IniDBBuilderPackage::buildPackageSource): Move source package logic
5533 out from process_src, as it now occurs at separate times.
5534 (IniDBBuilderPackage::buildPackageRequirement): Remove.
ca2b7505 5535 (IniDBBuilderPackage::buildSourceName): Use renamed package
3c196821
RC
5536 specifiation accessor for clarity.
5537 (IniDBBuilderPackage::buildSourceNameVersion): Ditto.
5538 (IniDBBuilderPackage::add_correct_version): Use STL iterators rather
5539 than custom code.
5540 Remove source package references.
5541 (IniDBBuilderPackage::process_src): Remove source package code as it's
5542 now handled separately.
5543 Set Path information before merging versions, to prevent dangling
5544 pointers.
5545 * IniDBBuilderPackage.h (IniDBBuilderPackage::buildPackageRequirement):
5546 Remove.
5547 (IniDBBuilderPackage::cpv): Remove.
5548 (IniDBBuilderPackage::cbpv): New generic binary working variable.
5549 (IniDBBuilderPackage::cspv): Ditto, but for source packages.
5550 (IniDBBuilderPackage::csp): Source package variable for disjoint
5551 source packages.
5552 * Makefile.am (AM_CFLAGS): Remove -Winline to allow stl set code
5553 to compile. If it compiles cleanly in gcc 3.1, then reinstate.
5554 * PickPackageLine.cc: Adjust packageversion accessors to the new
5555 reference calls. (i.e. -> to .) throughout.
5556 (PickPackageLine::paint): Use accessible() for clarity.
5557 Use new split out source package logic.
5558 (PickPackageLine::click): Ditto.
5559 * PickView.cc (PickView::init_headers): Adjust packageversion accessors
5560 to the new reference calls. (i.e. -> to .) throughout.
5561 Use new split out source package logic.
5562 * choose.cc: Don't depend on a specific package type.
ca2b7505 5563 Adjust packageversion accessors to the new reference calls. (i.e. -> to
3c196821
RC
5564 .) throughout.
5565 (set_existence): Use accessible () for clarity.
5566 (default_trust): Simplify a little.
ca2b7505 5567 (scanAVersion): Factored out code from scan_downloaded_files for
3c196821
RC
5568 clarity.
5569 (scan_downloaded_files): Factor out inner loop for clarity.
5570 (ChooserPage::OnNext): Don't dump the dependency list,
ca2b7505 5571 it's parsing is robust now!.
3c196821
RC
5572 * cygpackage.cc (createInstance): Use a factory method to create new
5573 objects.
5574 (cygpackage::cygpackage): Make this private for use by the factory.
5575 (cygpackage::setCanonicalVersion): Renamed from set_canonical_version.
5576 Remove key usage as it's obsolete.
5577 * cygpackage.h (cygpackage): Inherit from _packageversion, not
5578 packageversion.
5579 (cygpackage::createInstance): New factory.
5580 (cygpackage::cygpackage): Make private.
5581 * desktop.cc (make_passwd_group): Use new packageversion reference.
5582 * download.cc (do_download_thread): Use changeRequested() for clarity.
5583 Use new packageversion reference calls.
5584 * iniparse.y (REQUIRES): Reuse the packageList code and dump the one-off
5585 requires code.
5586 * install.cc: Adjust -> to ., and use the new accessor functions for
5587 packageversion throughout.
5588 * package_db.cc: Adjust -> to ., and use the new accessor functions for
5589 packageversion throughout.
5590 (packagedb::packagedb): Use the new cygpackage factory.
5591 (packagedb::flush): Leverage String to remove buffer overflow chance in
5592 sprintf.
5593 (packagedb::findBinary): Find a binary meta package that has a version
5594 matching a given specification.
5595 (packagedb::findSource): Ditto, but for source.
5596 * package_db.h (packagedb::findBinary): Declare.
5597 (packagedb::findSource): Ditto.
5598 * package_meta.cc: Adjust packageversion accessors to the new
5599 reference calls. (i.e. -> to .) throughout.
5600 Include the package_meta header first to ensure it parses standalone.
5601 Use the STL algorithms.
5602 (packagemeta::packagemeta): Create a copy constructor to allowing
5603 cloning binary package metadata to source package metadata.
ca2b7505 5604 (packagemeta::~packagemeta): Use the STL coleltion code rather than
3c196821
RC
5605 custom collection code.
5606 (packagemeta::add_version): Ditto.
5607 (packagemeta::set_installed): Ditto.
5608 (packagemeta::SDesc): Ditto.
5609 (hasSDesc): Helper function for find_if.
5610 (checkForInstalled): Ditto.
5611 (checkForUpgradeable): Ditto.
5612 (checkForSatisfiable): Ditto.
5613 (packagemeta::action_caption): Update for split out source packages.
5614 (packagemeta::set_action): Ditto.
5615 (packagemeta::set_requirements): Support multi-valued dependency
5616 lists - a|b & c|d - with versioned package specifications.
5617 (packagemeta::accessible): Helper member to improve abstraction.
5618 (packagemeta::sourceAccessible): Ditto.
5619 * package_meta.h: Adjust packageversion accessors to the new
5620 reference calls. (i.e. "->" to "." and"*" to "" ) throughout.
58b12a06 5621 (packagemeta::packagemeta): Declare copy constructor.
3c196821
RC
5622 Remove self initialising members.
5623 (packagemeta::set_action): Update parameters for new packageversion.
5624 (packagemeta::trustp): Ditto.
5625 (packagemeta::versions): Becomes an STL set.
5626 * package_source.h (packagesource::Cached): Const correctness change.
5627 * package_version.cc: Rewrite the packageversion interface to remove
5628 the cygpackage nonvirtual members, and provide a copy by value,
5629 pointer semantics reference counting wrapper class to ease use and
5630 comparison of packageversions.
5631 Change existing packageversion class to _packageversion throughout.
5632 (_defaultversion): A trivial concrete class to prevent specialcasing
5633 the default constructor for packageversion;
5634 (packageversion::packageversion): Implement.
5635 (packageversion::~packageversion): Ditto.
5636 (packageversion::operator=): Ditto.
5637 (packageversion::operator !): Ditto.
5638 (packageversion::operator bool): Ditto.
5639 (packageversion::operator ==): Ditto.
5640 (packageversion::operator !=): Ditto.
5641 (packageversion::operator <): Ditto.
5642 (packageversion::Name): Ditto.
5643 (packageversion::Canonical_version): Ditto.
5644 (packageversion::setCanonicalVersion): Ditto.
5645 (packageversion::getfirstfile): Ditto.
5646 (packageversion::getnextfile): Ditto.
5647 (packageversion::SDesc): Ditto.
5648 (packageversion::set_sdesc): Ditto.
5649 (packageversion::LDesc): Ditto.
5650 (packageversion::set_ldesc): Ditto.
5651 (packageversion::sourcePackage): Ditto.
5652 (packageversion::sourcePackageSpecification): Ditto.
5653 (packageversion::setSourcePackageSpecification): Ditto.
5654 (packageversion::depends): Ditto.
5655 (packageversion::predepends): Ditto.
5656 (packageversion::recommends): Ditto.
5657 (packageversion::suggests): Ditto.
5658 (packageversion::replaces): Ditto.
5659 (packageversion::conflicts): Ditto.
5660 (packageversion::provides): Ditto.
5661 (packageversion::picked): Ditto.
5662 (packageversion::pick): Ditto.
5663 (packageversion::changeRequested): Ditto.
5664 (packageversion::uninstall): Ditto.
5665 (packageversion::source): Ditto.
5666 (packageversion::accessible): Ditto.
5667 (_packageversion::sourcePackage): Ditto.
5668 (_packageversion::accessible): Ditto.
5669 (_packageversion::changeRequested): Ditto.
5670 * package_version.h: Rewrite the packageversion interface to remove
5671 the cygpackage nonvirtual members, and provide a copy by value,
5672 pointer semantics reference counting wrapper class to ease use and
5673 comparison of packageversions.
5674 Change existing packageversion class to _packageversion throughout.
5675 (Dependency): Remove.
5676 (packageversion): New wrapper class.
5677 (_packageversion): Renamed from packageversion.
5678 (_packageversion::setCanonicalVersion): New method.
5679 (_packageversion::sourcePackage): Ditto.
5680 (_packageversion::sourcePackageSpecification): Ditto.
5681 (_packageversion::setSourcePackageSpecification): Ditto.
5682 (_packageversion::changeRequested): Ditto.
5683 (_packageversion::bin): Rename to source.
5684 (_packageversion::src): Remove.
5685 (_packageversion::accessible): New method.
5686 (_packageversion::references): Allow reference counting.
ca2b7505 5687 (_packageversion::sourceVersion): Cached the best-match source
3c196821
RC
5688 package version.
5689
387cb501
RC
56902002-06-27 Robert Collins <rbtcollins@hotmail.com>
5691
5692 * compress_bz.h (compress_bz::position): Track how much has been read.
5693 * compress_bz.cc (compress_bz::compress_bz): And initialise it.
5694 (compress_bz::read): Track amount read by the client.
5695 (compress_bz::tell): And report it when asked.
5696
7d702af3
RC
56972002-06-27 Robert Collins <rbtcollins@hotmail.com>
5698
5699 * Makefile.am (snapshot): Automate snapshot creation some more.
5700
08cd08c3
RC
57012002-06-27 Robert Collins <rbtcollins@hotmail.com>
5702
5703 * msg.cc (msg): Use vsnprintf to avoid buffer overflows.
5704 (mbox): Ditto.
5705 * ini.cc (fprintf): Ditto.
5706 * log.cc (log): Ditto.
5707 * package_db.cc (packagedb::sourcePackages): Split out source packages
5708 from binary packages.
5709 * package_db.h: Ditto.
5710
aa1e3b4d
RC
57112002-06-27 Robert Collins <rbtcollins@hotmail.com>
5712
5713 * PackageSpecification.h: New file. Abstracts the ability to refer
5714 to another package, by name, or name and version.
5715 * PackageSpecification.cc: Ditto.
5716 * IniDBBuilder.cc (IniDBBuilder::buildPackageInstall): Simplify.
5717 (IniDBBuilder::buildPackageSource): Ditto.
5718 (IniDBBuilder::buildBeginDepends): New method for versioned
5719 dependencies.
5720 (IniDBBuilder::buildBeginPreDepends): Likewise, for dependencies to be
5721 satisfied before pre-install.
5722 (IniDBBuilder::buildPriority): New method, for getting the package
5723 Priority.
5724 (IniDBBuilder::buildInstalledSize): How much disk space does it need?
5725 (IniDBBuilder::buildMaintainer): Who maintains the package?
5726 (IniDBBuilder::buildArchitecture): What platform is it for?
5727 (IniDBBuilder::buildInstallSize): How big is the binary download?
5728 (IniDBBuilder::buildInstallMD5): Whats the MD5 on the binary?
5729 (IniDBBuilder::buildSourceMD5): Whats the MD5 on the source package?
5730 (IniDBBuilder::buildBeginRecommends): What other packages are
5731 recommended with this one?
5732 (IniDBBuilder::buildBeginSuggests): And suggested?
5733 (IniDBBuilder::buildBeginReplaces): What packages does this replace?
5734 (IniDBBuilder::buildBeginConflicts): And collide with?
5735 (IniDBBuilder::buildBeginProvides): What virtual packages (or obsolete
5736 package names) does this provide?
5737 (IniDBBuilder::buildDescription): Grab a multi line description one
5738 line at a time.
5739 (IniDBBuilder::buildSourceName): What source package should be used to
5740 install the source for this binary package?
5741 (IniDBBuilder::buildSourceNameVersion): Is a specific version needed?
ca2b7505 5742 (IniDBBuilder::buildPackageListAndNode): Add another AND clause to a
aa1e3b4d
RC
5743 list of package specifications.
5744 (IniDBBuilder::buildPackageListOrNode): Add another OR clause.
5745 (IniDBBuilder::buildPackageListOperator): Add a versioning operator
5746 to the current specification.
5747 (IniDBBuilder::buildPackageListOperatorVersion): What version does the
5748 operator act on?
5749 * IniDBBuilder.h: Declare all the IniDBBuilder.cc changes.
5750 * IniDBBuilderPackage.cc: As for IniDBBuilder.cc.
5751 (IniDBBuilderPackage::IniDBBuilderPackage): Iniitialize new members.
ca2b7505 5752 (IniDBBuilderPackage::process_src): Streamline and split out
aa1e3b4d
RC
5753 functionality.
5754 (IniDBBuilderPackage::setSourceSize): From process_src.
5755 * IniDBBuilderPackage.h: Declare the IniDBBuilderPackage.cc changes.
5756 (IniDBBuilderPackage::currentSpec): Track the in-progress specifiation.
5757 (IniDBBuilderPackage::currentOrList): Track the current Or list.
5758 (IniDBBuilderPackage::currentAndList): Track the current And list.
5759 * IniParseFeedback.cc (IniParseFeedback::progress): Provide completion
349bd18c 5760 progress on parsing.
aa1e3b4d
RC
5761 (IniParseFeedback::iniName): Tell what ini filename we are currently
5762 processing.
5763 * IniParseFeedback.h: Declare IniParseFeedback.cc changes.
ca2b7505 5764 * IniParseFindVisitor.cc (IniParseFindVisitor::IniParseFindVisitor):
aa1e3b4d
RC
5765 Make the feedback object non-const to allow mutating methods which are
5766 needed when the object has state.
5767 (IniParseFindVisitor::visitFile): Tell the caller the name of each
5768 .ini found.
5769 Initialise the parser with the feedback object to allow it to tell of
5770 progress.
5771 * IniParseFindVisitor.h: Declare IniParseFindVisitor.cc changes.
5772 * Makefile.am (inilinst_SOURCES): Add more requisite classes.
5773 (setup_SOURCES): Add the new PackageSpecification sources.
5774 * ScanFindVisitor.cc (ScanFindVisitor::visitFile): Use the new
5775 builder syntax to setup binary package details.
5776 * choose.cc: Use the LogSingleton calls throughout.
5777 * configure.in: Create the INILINT substitution correctly for recent
5778 autotool configurations.
5779 * cygpackage.cc (cygpackage::getfirstfile): Return an empty String
5780 rather than a string built from an int. Thanks to Pavel Tsekov for
5781 identifying the bug.
5782 (cygpackage::getnextfile): Ditto.
5783 * download.cc: Use LogSIngletion calls throughout.
ca2b7505 5784 (validateCachedPackage): A refactoring of the
aa1e3b4d
RC
5785 check_for_cached code to eliminate duplciation.
5786 (check_for_cached): Use validateCachedPackage to check packages.
ca2b7505 5787 * ini.cc (GuiParseFeedback): Provide gui feedback on ini name and
aa1e3b4d
RC
5788 parsing progress.
5789 (do_remote_ini): Ditto.
5790 * ini.h (ini_init): Pass a IniParseFeedback to the parser, to allow
5791 progress reporting.
5792 * inilex.l: Identify new symbols - operators, and multi line plain text.
5793 Releases files.
5794 * inilintmain.cc (show_help): Provide basic infomation on inilint.
5795 * iniparse.y: Adjust for the new builder syntax, and process debian
5796 Release files.
5797 * io_stream_file.cc: Always include mkdir.h.
5798 * list.h: Factor index location into a private routine.
5799 (list::findindex): Implement this.
ca2b7505 5800 * mkdir.cc (mkdir_p): Make the use of WIN32 code conditional on mingw
aa1e3b4d
RC
5801 builds. NB: This breaks cygwin build functionality still.
5802 * package_meta.cc: Use the LogSingleton calls throughout.
5803 (packagemeta::set_requirements): Adjust for object changes in
5804 dependencies.
5805 * package_meta.h (packagemeta::packagemeta): Initialise new members.
ca2b7505 5806 (packagemeta::architecture): What platform does this package run on?
aa1e3b4d 5807 This may need to move in the future to a per packagefile object.
58b12a06 5808 (packagemeta::priority): What priority does this package have?
aa1e3b4d
RC
5809 * package_source.h (packagesource::packagesource): Initialise new
5810 members.
5811 (packagesource::installedSize): How much space does the package need?
5812 (packagesource::setInstalledSize): Tell the amount.
5813 (packagesource::_installedSize): And store it.
ca2b7505 5814 * package_version.cc (packageversion::sourcePackage): return the
aa1e3b4d
RC
5815 source package.
5816 (packageversion::setSourcePackage): And set it.
5817 * package_version.h: Declare the package_version.cc changes.
5818 (packageversion::depends): New package specification AND list.
5819 (packageversion::predepends): Ditto.
5820 (packageversion::recommends): Ditto.
5821 (packageversion::suggests): Ditto.
5822 (packageversion::replaces): Ditto.
5823 (packageversion::conflicts): Ditto.
5824 (packageversion::provides): Ditto.
5825 (packageversion::sourcePackage): What source package is needed?
5826 * threebar.cc (ThreeBarProgressPage::SetText4): Set the label beside
5827 the bottom bar.
5828 * threebar.h: Declare the threebar.cc change.
5829
58302002-06-27 John Marshall <johnm@falch.net>
5831
5832 * res.rc (SETUPINI_MISSING): Make trailing spaces visible.
5833 * site.cc (SitePage::OnMessageCmd): Ditto
5834
2a994e0b
RC
58352002-06-15 Robert Collins <rbtcollins@hotmail.com>
5836
5837 * nio-ie5.cc (NetIO_IE5::NetIO_IE): Allow cached data.
5838
ceff7035
RC
58392002-06-15 Robert Collins <rbtcollins@hotmail.com>
5840
5841 * package_meta.cc (packagemeta::set_action): When installing packages
5842 with no binaries, choose the source package.
5843
9bd27040
RC
58442002-06-10 Robert Collins <rbtcollins@hotmail.com>
5845
5846 * IniParseFindVisitor (IniParseFindVisitor::visitFile): Apply Max
ca2b7505 5847 Bowshers fix for the crash with a root level setup.ini.
9bd27040
RC
5848 * README: Update todos.
5849
1dcff4a0
RC
58502002-05-26 Ralf Habacker <ralf.habacker@freenet.de>
5851
5852 * archive_tar.cc (archive_tar::next_file_name()): fixed broken
5853 GNU long name extension support.
349bd18c 5854
0773e4f2
RC
58552002-05-27 Robert Collins <rbtcollins@hotmail.com>
5856
ca2b7505 5857 * IniParseFindVisitor.cc (IniParseFindVisitor::visitFile): Don't
0773e4f2
RC
5858 unescape 0 length strings.
5859
a828d772
RC
58602002-05-20 Robert Collins <rbtcollins@hotmail.com>
5861
5862 * package_meta.cc (packagemeta::set_action): Don't allow reinstall
5863 when local with no cached file, and install the default source if the
5864 default version has no binary.
5865
67829ce0
RC
58662002-05-19 Robert Collins <rbtcollins@hotmail.com>
5867
5868 * IniDBBuilderPackage.cc (IniDBBuilderPackage::IniDBBuilderPackage): New
349bd18c 5869 method.
ca2b7505 5870 (IniDBBuilderPackage::buildVersion): Provide a warning when a newer
67829ce0
RC
5871 setup version created the ini file.
5872 * IniDBBuilderPackage.h (IniDBBuilderPackage::IniDBBuilderPackage): New
5873 method.
5874 * IniParseFindVisitor.cc (IniParseFindVisitor::visitFile): Use the new
5875 feedback strategy.
5876 * IniParseFindVisitor.h (IniParseFindVisitor::IniParseFindVisitor):
5877 Require a feedback strategy.
5878 * Makefile.am (setup_SOURCES): Add IniParseFeedback sources.
5879 * Makefile.in: Regenerate.
5880
4849e2fc
RC
58812002-05-19 Robert Collins <rbtcollins@hotmail.com>
5882
5883 * io_stream_file.cc (io_stream_file::remove): Use the SetFileAttributes
5884 trick to delete read only files.
ca2b7505 5885 * io_stream_cygfile.cc (io_stream_cygfile::remove): Use file:// to
4849e2fc
RC
5886 remove files.
5887 * Makefile.am (release): Tweak to be more helpful.
5888 * Makefile.in: Regenerate.
5889
7cb35117
RC
58902002-05-19 Robert Collins <rbtcollins@hotmail.com>
5891
5892 * Makefile.am (release): Tweak to be more helpful.
5893 * Makefile.in: Regenerate.
7cb35117 5894
5090e3ce
RC
58952002-05-19 Robert Collins <rbtcollins@hotmail.com>
5896
5897 * Makefile.am (release): Tweak to be more helpful.
5898 * Makefile.in: Regenerate.
5899
9e9b881a
RC
59002002-05-19 Robert Collins <rbtcollins@hotmail.com>
5901
ca2b7505 5902 * choose.cc (scan_downloaded_files): When a non-installed version
9e9b881a
RC
5903 has neither bin nor src cached files for local installs,
5904 remove the version from availability.
5905
ea36e064
RC
59062002-05-19 Robert Collins <rbtcollins@hotmail.com>
5907
5908 * ini.cc (do_remote_ini): Save uncompressed ini's correctly.
5909
b401ef47
RC
59102002-05-19 Robert Collins <rbtcollins@hotmail.com>
5911
5912 * rsync: New support library, contains librsync. This is not (yet)
349bd18c 5913 rsync interoperable.
b401ef47
RC
5914 * configure.in: --with-rsync to enable rsync support. (Not complete).
5915 * Makefile.am: Enable building with rsync.
5916 * Makefile.in: Regenerate.
5917 * configure: Ditto.
5918 * IniDBBuilder.cc (IniDBBuilder::buildPackageInstall): Pass the md5 as
5919 an array.
5920 (IniDBBuilder::buildPackageSource): Ditto.
5921 * IniDBBuilder.h: Ditto.
5922 * IniDBBuilderPackage.cc: Ditto.
5923 * IniDBBuilderPackage.h: Ditto.
5924 * FindVisitor.cc: New file.
5925 * FindVisitor.h: New file, interface for visiting a file system
5926 aggregate.
5927 * IniParseFindVisitor.cc: New file.
ca2b7505 5928 * IniParseFindVisitor.h: New file, concrete FindVisitor that parses
b401ef47
RC
5929 found setup.ini's.
5930 * README: Update TODO's.
5931 * String++.cc (String::String): New constructor for <string> inter-
5932 operability.
5933 (String::substr): New method.
5934 * String++.h: Ditto.
5935 * choose.cc (scan2): Remove.
5936 (scan_downloaded_files): Simplify.
5937 * dialog.h: Include parsing pre-requirements.
5938 * download.cc (check_for_cached): Fullname was used incorrectly - fix.
5939 * filemanip.cc (parse_filename): -src packages where incorrectly parsed.
5940 * find.cc: Rewrite. Now uses a Visitor pattern and is re-entrant.
5941 * find.h: Ditto.
5942 * fromcwd.cc: Remove unneeded includes.
5943 (is_test_version): Remove.
5944 (found_file): Remove.
5945 (SetupFindVisitor): Trivial visitor to detect setup.ini's.
5946 (found_ini): Remove.
5947 (do_fromcwd): Remove commented code that has be replaced elsewhere.
5948 * ini.cc (local_ini): Remove.
5949 (findBuilder): Remove.
5950 (find_routine): Remove.
5951 (do_local_ini): Use new IniParseFindVisitor.
5952 * iniparse.y: Typecase MD5 arrays, as we know they are allocated as
5953 unsigned char.
5954 * postinstall.cc: Remove non-core includes.
5955 (run_script_in_postinstall): Remove.
5956 (RunFindVisitor): Trivial Visitor, runs each found script.
5957 (do_postinstall): Use new find syntax.
5958
0d4e0aad
CF
59592002-05-14 Christopher Faylor <cgf@redhat.com>
5960
5961 * ini.cc (find_routine): Don't clear buffer it it's NULL.
5962
59632002-05-14 Christopher Faylor <cgf@redhat.com>
5964
5965 * filemanip.h (trail): Declare.
5966 * filemanip.cc (trail): New function.
5967 (find_tar_ext): Use trail() instead of strstr().
5968 * fromcwd.cc (check_ini): Ditto.
5969 * ini.cc (find_routine): Ditto. Don't tack local_dir to path since it
5970 should now be fully qualified. Set ini_filename. Reset error_buf and
5971 error_count for any subsequent ini file parsing.
5972 (ini_filename): New static variable for parse error reporting.
5973 (yyerror): Use full path of setup.ini in error message. Subtract one
5974 from line number if at bol.
5975 * find.cc (found_part): Eliminate.
5976 (find_sub): Call for_each with full path found rather than just file
5977 component.
5978 (find): Don't calculate found_part.
5979 * inilex.l (ini_init): Flush input buffer and reset line number.
5980 (yybol): New function. Exports YY_AT_BOL.
5981 * iniparse.y: Increase stack depth to allow more tokens to be processed.
5982 (yyparse): Remove newline from error condition to allow subsequent
5983 per-line error processing to proceed normally.
5984
59852002-05-14 Christopher Faylor <cgf@redhat.com>
5986
5987 * find.cc (find_sub): Be more defensive in preserving trailing parts of
5988 components when doing recursive directory searches or calling user
5989 supplied for_each().
5990 * ini.cc (find_routine): Don't assume that any path name with
5991 "setup.ini" in it is actually a setup.ini file. Only honor trailing
5992 components. Copy path argument to temporary storage when unescaping
5993 to prevent nuking of argument.
5994
874c569a
RC
59952002-05-12 Robert Collins <rbtcollins@hotmail.com>
5996
5997 * CONTRIBUTORS: New file.
5998
f6a81f69
RC
59992002-04-02 Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>
6000
6001 * choose.cc: Run indent.
6002 (nextbutton): Remove static variable.
6003 (default_trust): Remove use of nextbutton.
6004 (set_view_mode): Ditto.
6005 (create_listview): Add IDC_CHOOSE_PREV and IDC_CHOOSE_NEXT to ta[] so
6006 rbset() sets the prev/next/curr radio buttons properly.
6007 (dialog_cmd): Delete function.
6008 (dialog_proc): Delete function. Move WM_INITDIALOG functionality to
6009 ChooserPage::OnInit.
6010 (do_choose): Delete function. Move pre-DialogBox() code to
6011 ChooserPage::OnInit(), post-DialogBox() code to ChooserPage::OnNext.
6012 (WM_APP_START_CHOOSE): Remove define.
6013 (WM_APP_CHOOSE_IS_FINISHED): Remove define.
6014 (do_choose_thread): Delete function.
6015 (ChooserPage::OnActivate): Delete method.
6016 (ChooserPage::OnMessageApp): Delete method.
6017 (ChooserPage::OnInit): New method.
6018 (ChooserPage::OnNext): New method.
6019 (ChooserPage::OnBack): New method.
6020 (ChooserPage::OnMessageCmd): New method.
6021 * choose.h: Run indent.
6022 (ChooserPage::OnMessageApp): Delete declaration.
6023 (ChooserPage::OnActivate): Ditto.
6024 (ChooserPage::OnMessageCmd): New declaration.
6025 (ChooserPage::OnInit): Ditto.
6026 (ChooserPage::OnNext): Ditto.
6027 (ChooserPage::OnBack): Ditto.
6028 * desktop.cc (DesktopSetupPage::OnBack): Replace use of IDD_CHOOSER
6029 with IDD_CHOOSE.
6030 * fromcwd.cc (do_fromcwd): Replace use of IDD_CHOOSER with IDD_CHOOSE.
6031 * ini.cc (do_ini_thread): Replace use of IDD_CHOOSER with IDD_CHOOSE.
6032 * res.rc (IDD_CHOOSE): Remove dialog template.
6033 (IDD_CHOOSER): Alter dialog template to fit wizard size and format.
6034
74617327
RC
60352002-05-12 Robert Collins <rbtcollins@hotmail.com>
6036
6037 * LogFile.cc (endLog): Work around an apparent libg++-3 bug causing
6038 corrupt log file entries.
6039 * geturl.cc: Convert to the new LogSingleton logging.
6040
3272d625
RC
60412002-05-12 Robert Collins <rbtcollins@hotmail.com>
6042
6043 * ini.cc (do_remote_ini): Use setup.bz2 if it exists in preference to
6044 setup.ini.
6045
fc687221
RC
60462002-05-12 Robert Collins <rbtcollins@hotmail.com>
6047
6048 * geturl.h: Declare getUrlToStream.
6049 * geturl.cc (getUrlToStream): New function.
6050 (get_url_to_membuf): Refactor to use getUrlToStream.
6051
902c8a3f
RC
60522002-05-11 Robert Collins <rbtcollins@hotmail.com>
6053
6054 * Makefile.am: Add a release target to automate some of the routine
6055 work.
6056 * Makefile.in: Regenerate.
6057
2ab26cdb
RC
60582002-05-11 Robert Collins <rbtcollins@hotmail.com>
6059
6060 * choose.cc (scan_downloaded_files): On local installs remove all
6061 mirror sites if no cached copy of a package is found.
6062
94852d65
RC
60632002-05-10 Robert Collins <rbtcollins@hotmail.com>
6064
6065 * Makefile.in: Regenerate.
58b12a06 6066 * iniparse.y: Use left recursion, not right in the lines rule to
94852d65
RC
6067 avoid stack overflows.
6068 * README: Update TODO's.
6069 * io_stream_file.cc: Native builds need to include sys/stat.h
6070
3548fbc3
RC
60712002-05-06 John Marshall <jmarshall@acm.org>
6072
6073 * site.cc (SitePage::OnMessageCmd): recalculate navigation
6074 button activation when "Add" is pressed.
6075 (SitePage::CheckControlsAndDisableAccordingly): tweak comment.
6076
60772002-05-07 Robert Collins <rbtcollins@hotmail.com>
2b48ecd0
RC
6078
6079 * Makefile.am (inlint_SOURCES): Add conditional objects to inilint
6080 depending on platform.
6081 Add file:// support.
6082 * configure.in: Set conditional MINGWTARGET if compiling against mingw
6083 libraries.
6084 * Makefile.in: Regenerate.
6085 * configure: Ditto.
6086 * io_stream_file.cc: Only use win32 calls when building for mingw.
6087
19911586
RC
60882002-05-05 Robert Collins <rbtcollins@hotmail.com>
6089
6090 * Makefile.am (noinst_PROGRAMS): Make inilint configurable.
6091 * configure.in: Ditto.
6092 Fix incorrect header checking syntax.
6093 * aclocal.m4: Regenerate.
6094 * configure: Regenerate.
6095 * Makefile.in: Regenerate.
6096 * io_stream.cc: Remove platform specific and provider specific code.
6097 (io_stream::registerProvider): New method, registers a Url provider with
6098 the io_stream code.
6099 Make all methods consistently throw invalid_argument exceptions when
6100 a provider that is requested is not present.
6101 (findProvider): New private function, finds a provider.
6102 * io_stream.h: Declare io_stream::registerProvider.
6103 * io_stream_cygfile.cc: Create a Provider class to register with
6104 io_stream.cc.
6105 * io_stream_file.cc: Ditto.
6106 * archive.cc: Remove unneeded includes.
6107 * archive_tar.cc: Remove unneeded includes.
6108 * archive_tar.h: Add required include.
6109 * archive_tar_file.cc: Remove unneded includes.
6110 * choose.cc: Remove unneeded includes:
6111
bf4ffcd9
RC
61122002-05-04 Robert Collins <rbtcollins@hotmail.com>
6113
6114 * io_stream.cc: Use the new log interface thruout.
6115
9f4a0c62
RC
61162002-05-04 Robert Collins <rbtcollins@hotmail.com>
6117
6118 * log.cc (log): Reimplement via LogSingleton.
6119 (log_save): Remove.
6120 (exit_setup): Remove.
6121 * log.h (log_save): Remove.
6122 (exit_setup): Remove.
6123 * LogSingleton.cc: New file.
6124 * LogSingleton.h: New file.
6125 * LogFile.cc: New file.
6126 * LogFile.h: New file.
6127 * Makefile.am (inilint_SOURCES): Add the new log interface.
6128 (setup_SOURCES): Add the new log interface and the concrete File
6129 implementation.
6130 * Makefile.in: Regenerate.
6131 * archive.cc: Use the new log interface thruout.
6132 * archive_tar.cc: Ditto.
6133 * main.cc: Ditto.
6134 * dialog.cc (fatal): Use the new log interface.
6135 * ini.cc (do_ini_thread): Use the log interface to exit.
6136 * isntall.cc (do_install_thread): Ditto.
6137 * netio.cc (auth_cmd): Ditto.
6138 * msg.cc (fatal): Ditto.
6139 * localdir.cc (save_local_dir): Save to different files depending on
6140 the mode, and if a root dir exists.
6141
076654e7
RC
61422002-05-04 Robert Collins <rbtcollins@hotmail.com>
6143
6144 * IniDBBuilder.cc: New file.
6145 * IniDBBuilder.h: New file.
6146 * IniDBBuilderPackage.cc: New file.
6147 * IniDBBuilderPackage.h: New file.
6148 * PackageTrust.h: New file.
6149 * IniState.h: Remove, wasn't thought out well enough.
6150 * Makefile.am (inilint_SOURCES): Add more requirements.
6151 (setup_SOURCES): Add new Builder base and concrete classes.
6152 * Makefile.in: Regenerate.
6153 * String++.cc (String::String): Implement int contructor.
6154 * String++.h (String): Declare int constructor.
6155 * archive_tar.cc (archive_tar::next_file_name): Return String() when
6156 no filename exists.
6157 * archive_tar.h (archive_tar_file): Remove get_next_filename method,
6158 it's not needed.
6159 * ini.cc: Replace IniState wuth IniDBBuilderPacakge.
6160 (find_routine): Use new IniDBBuilder to configure the parser.
6161 (do_local_ini): Ditto.
6162 (do_remote_ini): Ditto.
6163 * ini.h: Use IniDBBuilder to initialise parsing.
ca2b7505 6164 * inilex.l (MD5): Parse the MD5 string correctly, we had the nibbles
076654e7
RC
6165 swapped.
6166 (ini_init): Use an IniDBBuilder rather than static variables.
6167 * iniparse.y: Hand off all the object creation to a builder, rather
ca2b7505 6168 than hardcoding the behaviour. This allows run-time configured
076654e7 6169 behaviour.
ca2b7505 6170 * io_stream_cygfile.h (io_stream_cygfile): Remove get_next_filename
076654e7
RC
6171 method, it's not needed.
6172 * io_stream_file.h (io_stream_file): Ditto.
6173 * mount.cc (cygpath): Return String() for missing mounts.
6174 * package_meta.cc (packagemeta::SDesc): Return String() for blank
6175 descriptions.
6176 * package_meta.h (trusts): Remove - replaced by PackageTrust.h.
6177 (packagemeta::packagemeta): Fix incorrect syntax in String constructor
6178 usage.
ca2b7505 6179 * cygpackage.cc (cygpackage::cygpackage): Fix incorrect syntax in
076654e7
RC
6180 String constructor usage.
6181 * site.h (site_list_type): Ditto.
6182
6391823e
RC
61832002-05-03 Robert Collins <rbtcollins@hotmail.com>
6184
6185 * String++.h: Declare a << operator that accepts String objects.
6186 * String++.cc: We need iostream for..
6187 (operator <<): this. Provide a << operator that accepts String objects.
6188 * ini.cc (yyerror): Remove the "C" classifier - it's not needed.
6189 Change from vargs to a String parameter.
6190 * inilintmail.cc: Remove the gui related headers.
6191 (yyerror): Implement this for parsing.
6192 * iniparse.y: Use the new yyerror syntax.
6193
b92028a4
RC
61942002-05-03 Robert Collins <rbtcollins@hotmail.com>
6195
6196 * Makefile.am: Add IniState.h.
6197 * Makefile.in: Regenerate.
6198 * IniState.h: New file.
6199 * choose.cc: Don't include ini.h - it's not needed.
6200 * configure: Regenerate.
6201 * desktop.cc: Don't include ini.h - it's not needed.
6202 * download.cc: Ditto.
6203 * fromcwd.cc: Ditto.
6204 * ini.cc: Use IniState.h to track each parsing calling.
6205 (find_routine): Ditto.
6206 (do_remote_ini): Ditto.
6207 (do_ini_thread): Ditto.
6208 * ini.h (ini_init): Adjust parameters to include state object.
6209 * inilex.l: Declare parser state variable.
6210 (ini_init): Adjust parameters to include state object.
ca2b7505 6211 * iniparse.y: Remove obsolete setup_timestamp and setup_version
b92028a4
RC
6212 declarations.
6213 (setup_header): Use new state variable to track time and version.
6214 (add_correct_version): Ditto.
6215 * install.cc: Don't include ini.h - it's not needed.
6216
e0a4db64
RC
62172002-05-03 Robert Collins <rbtcollins@hotmail.com>
6218
6219 * nio-files.cc (NetIO): Use io_stream syntax for get_file_size.
6220 * io_stream_file.cc: Don't include filemanip.h.
6221 (io_stream_file::get_size): Implement here to remove filemanip
6222 dependency.
6223 * io_stream_cygfile.cc: Don't include filemanip.h.
6224 (io_stream_cygfile::get_size): Implement here to remove filemanip
6225 dependency.
6226 Implement a stat based version for when win32 is not available.
6227 * filemanip.h (get_file_size): Return size_t - it's more appropriate.
6228 * filemanip.cc: Don't include win32.h - be platform independent.
6229 Include strings.h and io_stream.h as part of that.
6230 (get_file_size): Leverage io_streams and remove win32 implementation.
6231 * download.cc (check_for_cached): Use io_stream syntax for
6232 get_file_size.
6233 (download_one): Ditto.
6234
62352002-05-02 Robert Collins <rbtcollins@hotmail.com>
ac65f5c5
RC
6236
6237 * configure.in: Correct a typo in last change.
6238 * configure: Regenerate.
6239 * Makefile.in: Regenerate.
6240
e0a4db64 62412002-05-02 Robert Collins <rbtcollins@hotmail.com>
e06ded88
RC
6242
6243 * configure.in: Check for string.h and string.
6244 * configure: Regenerate.
6245 * Makefile.in: Regenerate.
6246
1fd0694a
RC
62472002-05-01 Robert Collins <rbtcollins@hotmail.com>
6248
6249 * res.rc (IDD_SPLASH): Remove white box.
6250
89ca06c0
RC
62512002-05-01 Robert Collins <rbtcollins@hotmail.com>
6252
6253 Oops! forgot to list these in the last checkin.
6254 * inilintmain.cc: New file.
6255 * md5.h: New file - imported md5 source, BSD style licence.
6256 * md5.cc: New file - imported md5 source, BSD style licence.
6257 * Exception.cc: New file.
6258 * Exception.h: New file.
6259 * MD5++.cc: New file.
6260 * MD5++.h: New file.
6261
58ee6135
RC
62622002-05-01 Robert Collins <rbtcollins@hotmail.com>
6263
ca2b7505 6264 * Makefile.am (AM_CFLAGS): Remove -mwindows, it's a linker flag.
58ee6135
RC
6265 Remove -fno-rtti, we need it for exceptions.
6266 (AM_CXXFLAGS): Ditto.
6267 (WARNONLY_CFLAGS): Ditto.
6268 (EXTRA_PROGRAMS): Add with initial linter sources - not functional yet.
6269 (setup_LDFLAGS): Add and set to -mwindows.
6270 (setup_SOURCES): Add new sources.
6271 * Makefile.in: Regenerate.
6272 * README: Update TODO.
6273 * choose.cc (scan_downloaded_files): Use ini information if it's
6274 available.
6275 * configure: Regenerate.
6276 * download.cc (check_for_cached): Make reusable from elsewhere.
6277 Throw exceptions on errors (as opposed to failures).
6278 Check MD5 sum when it's known.
6279 (download_one): Never force a download.
6280 Handle corrupt package exceptions.
6281 * ini.cc (find_routine): Reverse escape the URL to correctly identify
6282 the site URL.
6283 * inilex.l (MD5): Provide a parsing rule (note: lowercase is required).
ca2b7505 6284 * iniparse.y: Allow calculation of MD5 sums, and allow src only
58ee6135
RC
6285 packages.
6286 (process_src): New helper function.
6287 * isntall.cc (install_one_source): Check MD5 sums when possible.
6288 Throw exceptions on errors.
6289 (do_install_thread): Handle exceptions for installation calls.
6290 * package_source.h: Store MD5 information.
6291 * propsheet.cc (PropSheet::Create): Add a useful comment.
6292 * res.rc (IDS_INSTALL_ERROR): Define.
6293 (IDS_CORRUPT_PACKAGE): Define.
6294 * resource.h (IDS_INSTALL_ERROR): Define.
6295 (IDS_CORRUPT_PACKAGE): Define.
6296 * rfc1738.cc (rfc1738_unescape_part): Implement.
6297 * rfc1738.h (rfc1738_unescape_part): Declare.
6298
45e01f23
RC
62992002-04-29 Robert Collins <rbtcollins@hotmail.com>
6300
6301 * Makefile.am: Remove dependecy rules that automake emits.
6302 Correct badly copied dependency info for manually compiled files.
58b12a06 6303 (setup_SOURCES): Add all used headers.
45e01f23
RC
6304 (EXTRA_DIST): Include non compilate but required sources.
6305 (setup_LDADD): Remove mingw32, it is autodetected.
6306 * Makefile.in: Regenerate.
6307 * String++.h: sys/types is a system header.
6308 * choose.cc (do_choose_thread): Make into a Win32 thread routine.
6309 Use ExitThread.
6310 (ChooserPage::OnMessageApp): Use Win32 threads. (_beginthread is not
6311 portable).
6312 * configure: Regenerate.
6313 * configure.in: Check for mingw32/cygwin specific headers and libraries.
ca2b7505 6314 * cygpackage.h: Include the win32.h header to get correct macro
45e01f23
RC
6315 definitions in all situations.
6316 * download.cc (do_download_reflector): Make into a Win32 thread routine.
6317 Use ExitThread.
6318 (do_download): Use Win32 threads.
6319 * ini.cc: Ditto.
6320 * install.cc: Ditto.
ca2b7505 6321 * (WinMain): Adjust to build valid command line using application
45e01f23 6322 under both mingw32 and cygwin.
ca2b7505 6323 * mount.cc (set)cygdrive_flags): Create new system flags if the
45e01f23
RC
6324 user requests system and the value does not exist.
6325 * nio-http.cc: Define a _strnicmp for cygwin.
6326 * package_db.cc: Include <errno.h> if it exists.
ca2b7505 6327 * site.cc (do_download_site_info_thread): Make into a Win32 thread
45e01f23
RC
6328 routine.
6329 Use ExitThread.
6330 (do_download_site-Info): Use Win32 threads.
ca2b7505 6331 * state.cc: Explicity declare variables to avoid header conflicts
45e01f23
RC
6332 caused by '#define extern" on cygwin.
6333 * win32.h: Include <alloca.h> if it exists.
6334 (_MAX_PATH): Define as MAX_PATH when not defined by windows.h.
6335 (_access): Define as access if not defined by windows.h.
6336
8bb9dad9
RC
63372002-04-27 Robert Collins <rbtcollins@hotmail.com>
6338
6339 * compress_gz.cc (compress_gz::error): EOF is not an error condition.
6340
6908b7d7
RC
63412002-04-27 Robert Collins <rbtcollins@hotmail.com>
6342
6343 * Makefile.am: Add libgetopt++ to the subdirs list.
6344 Search the libgetopt++ header directory.
6345 Link against libgetopt++.la.
6346 (setup_SOURCES): Remove GetOption.cc and getopt.c and Option.cc.
6347 (setup_LDADD): Explicitly include res.o.
6348 * Makefile.in: Regenerate.
6349 * aclocal.m4: Regenerate.
6350 * bootstrap.sh: Call libtoolize.
6351 * configure: Regenerate.
6352 * configure.in: Add libtool support and configure libgetopt++.
6353 * desktop.cc (NoShortcutsOption): Turn into a BoolOption.
6354 (DesktopSetupPage::OnInit): Use the simpler syntax.
6355 * desktop.h: Remove dependency on Option.h, and remove NoShortcustOption
6356 declaration.
6357 * main.cc: Include getopt++/GetOption.h.
6358 (main): Use simpler syntax.
6359 * cdefs.h: Remove.
6360 * getopt.h: Remove.
6361 * getopt.c: Remove.
6362 * GetOption.h: Remove.
6363 * GetOption.cc: Remove.
6364 * Option.h: Remove.
6365 * Option.cc: Remove.
6366
9063358a
RC
63672002-04-26 Robert Collins <rbtcollins@hotmail.com>
6368
6369 * Makefile.am: Add zlib and bz2lib to SUBDIRS.
6370
f6100b6f
RC
63712002-04-26 Robert Collins <rbtcollins@hotmail.com>
6372
6373 * aclocal.m4: New file, cached macros.
ca2b7505 6374 * bootstrap.sh: New file, calls required autotools in appropriate
f6100b6f
RC
6375 order.
6376 * Makefile.am: New file, input Makefile for automake.
6377 * Makefile,in: Now a generated file - regenerate.
6378 * configure: Regenerate.
6379 * configure.in: Add automake support.
6380 * inilex.l: Change VERSION to PACKAGEVERSION to avoid a collision with
6381 automake's VERSION define.
6382 * iniparse.y: Ditto.
6383
db04fc41
RC
63842002-04-26 Robert Collins <rbtcollins@hotmail.com>
6385
6386 * cdefs.h: New file, imported to allow getopt.c to build without
6387 cygwin headers.
6388 * getopt.h: New file, imported to allow building without cygwin headers.
6389 * getopt.c: Ditto.
6390 * bz2lib: New directory, contains copy of bz2lib.
6391 * cfgaux: New directory, contains autotool helper scripts.
ca2b7505 6392 * Makefile,in: Adjust library and target definitions for building
db04fc41
RC
6393 outside the sourceware tree.
6394 * compress_bz.h: Use new bz2lib header location.
6395 * mount.cc: Import key defines and enums to be independent of cygwin
6396 headers.
ca2b7505 6397 * configure.in: Update to autoconf 2.53, and to be sourceware
db04fc41
RC
6398 independent.
6399 * configure: Regenerate.
6400
931f2755
RC
64012002-04-12 Robert Collins <rbtcollins@hotmail.com>
6402
6403 * mklink2.cc (make_link_2): Tweak to work with current w32api
6404 headers.
6405
64062002-04-10 Pavel Tsekov <ptsekov@gmx.net>
6407
6408 * version.cc (canonicalize_version): Fix a call delete[]
6409 to delete the allocated address.
6410
64112002-03-29 Robert Collins <rbtcollins@hotmail.com>
6412
6413 * PickView.cc (PickView::set_headers): Set last_col correctly. Thanks
6414 to Ton van Overbeek for locating the bug area.
6415
49cf3899
RC
64162003-03-27 Robert Collins <rbtcollins@hotmail.com>
6417
6418 * PickView.cc (PickView::insert_pkg): Be more generic with
6419 object use.
6420 (PickView::insert_category): Ditto.
6421 (PickView::~PickView): Create.
6422 * PickView.h (PickView::~PickView): Declare.
6423
1be8f8fd
RC
64242003-03-27 Robert Collins <rbtcollins@hotmail.com>
6425
6426 * Makefile.in (OBJS): Add new commandline objects.
6427 * desktop.cc (NoShortCutsOption): New option code.
6428 (DesktopSetupPage::OnInit): Check whether to skip shortcuts.
6429 * desktop.h (NoShortCutsOption): New concrete command line option class.
6430 * main.cc (WinMain): Process command line options.
6431 * GetOption.h: New file, singleton command line class.
6432 * GetOption.cc: New file, implementation of the above.
6433 * Option.h : New file, abstract option for GetOption.
6434 * Option.cc: New file, implement constructor and destructor.
6435
f2e49cf8
RC
64362002-03-26 Pavel Tsekov <ptsekov@gmx.net>
6437
58b12a06 6438 * mkdir.cc (mkdir_p): Stop processing if the path is exhausted.
f2e49cf8
RC
6439
64402002-03-26 Ton van Overbeek <tvoverbe@cistron.nl>
6441
58b12a06
MB
6442 * PickPackageLine.cc (PickPackageline::paint): Adjust clipping rectangle
6443 to textheight, so large fonts work.
f2e49cf8
RC
6444
64452003-03-26 Robert Collins <rbtcollins@hotmail.com>
6446
58b12a06
MB
6447 * io_stream_cygfile.cc (io_stream_cygfile::mklink): Don't translate
6448 symlinks.
f2e49cf8
RC
6449
64502003-03-26 Robert Collins <rbtcollins@hotmail.com>
6451
58b12a06
MB
6452 * io_stream_cygfile.cc (cwd): New static for cwd storage.
6453 (io_stream_cygfile::normalise): New method.
6454 (io_stream_cygfile::io_stream_cygfile): Use it.
6455 (io_stream_cygfile::exists): Ditto.
6456 (io_stream_cygfile::remove): Ditto.
6457 (io_stream_cygfile::mklink): And again.
6458 (cygmkdir_p): Yes, again.
6459 (io_stream_cygfile::move): And once more.
6460 * io_stream_cygfile.h (io_stream_cygfile::normalise): Declare.
6461 (io_stream_cygfile::cwd): Ditto.
f2e49cf8 6462
51ebb760
RC
64632003-03-26 Robert Collins <rbtcollins@hotmail.com>
6464
6465 * package_meta.cc (package_meta::~package_meta): Remove duplicate.
ca2b7505 6466 (CategoryPackage::~CategoryPackage): Ditto. (Thanks to Ton van
51ebb760
RC
6467 Overbeek for the report).
6468 * mklink2.cc: Moved from mklink2.c to avoid 'not a prototype error'.
6469 Make g++ compatible.
6470 * mklink2.c: Remove.
6471 * site.cc (site_list_type::init): Delete the correct memory addres.
6472 Thanks to Pavel Tsekov for tracking this down.
6473
e7d67c03
RC
64742002-03-20 Robert Collins <rbtcollins@hotmail.com>
6475
6476 * win32.h: Only define alloca if it's not already.
6477
2fa7c5a4
RC
64782002-03-20 Robert Collins <rbtcollins@hotmail.com>
6479
58b12a06
MB
6480 * package_meta.h (packamgemeta::trustp): Make 'test' choice leave
6481 installed packages alone.
2fa7c5a4
RC
6482 * README: Update with latest requests.
6483 * Various: MTC fixes from setup200202 branch.
6484
7bf13fc9
CF
64852002-03-19 Christopher Faylor <cgf@redhat.com>
6486
6487 * Makefile.in (setup_version.c): Add back magic which allows detection
6488 of setup.exe version number.
6489
2fa7c5a4
RC
64902002-03-17 Robert Collins <rbtcollins@hotmail.com>
6491
58b12a06 6492 * PickPackageLine.cc (PickPackageLine::paint): Fix incorrect clip region
2fa7c5a4
RC
6493 calculation on win9x systems.
6494
64952002-03-16 Robert Collins <rbtcollins@hotmail.com>
6496
58b12a06
MB
6497 * install.cc (install_one_source): Write the correct length of a string
6498 to the lst file (Thanks to Pavel Tsekov for reporting the bug).
2fa7c5a4
RC
6499
65002002-03-15 Robert Collins <rbtcollins@hotmail.com>
6501
6502 * choose.cc (list_click): Always refresh the entire chooser, as our
58b12a06
MB
6503 package state change mechanism is broken with the new improved list
6504 classes.
2fa7c5a4
RC
6505
65062002-03-15 Robert Collins <rbtcollins@hotmail.com>
6507
58b12a06
MB
6508 * desktop.cc (make_passwd_group): Check for .lnk suffix on /etc/passwd
6509 and /etc/group.
2fa7c5a4
RC
6510
65112002-03-15 Robert Collins <rbtcollins@hotmail.com>
6512
58b12a06
MB
6513 * PickPackageLine.cc (PickPackageLine::DrawCheck): New method factored
6514 out from paint().
6515 (PickPackageLine::paint): Use DrawCheck to draw the src tick box, and
6516 the new bin tickbox.
2fa7c5a4
RC
6517 (PickPackageLine::click): Handle the new bin tickbox.
6518 * PickPackageLine.h (PickPackageLine::DrawCheck): Declare this.
6519 * PickView.cc (pkg_headers): Add a Bin? column.
6520 (cat_headers): Ditto.
6521 (PickView::set_headers): Ditto.
6522 (PickView::init_headers): Ditto.
6523 * PickView.h (PickView): Ditto.
58b12a06
MB
6524 * choose.cc (list_click): Use the new name for src_col to set the clip
6525 rectangle.
2fa7c5a4
RC
6526
65272002-02-24 Michael A Chase <mchase@ix.netcom.com>
6528
6529 * io_stream_cygfile.cc (io_stream_cygfile::mklink): Fix up Robert's
6530 fixup.
6531
65322002-02-24 Michael A Chase <mchase@ix.netcom.com>
6533
6534 * desktop.cc (make_link): Add "file://" prefix to io_stream::mkpath_p()
6535 call.
6536 (make_passwd_group): Ditto.
6537 * localdir.cc (save_local_dir): Ditto.
6538 * io_stream_cygfile.cc (io_stream_cygfile::mklink): Wrap long lines.
6539 Add "cygfile://" prefix to io_stream::open() calls.
6540
204315f9
RC
65412002-02-24 Robert Collins <rbtcollins@hotmail.com>
6542
6543 * log.cc (log_save): Fix creating /var/log.
6544 * packate_meta.cc (standard_dirs): Remove duplicate '/''s.
6545
58db1046
RC
65462002-02-24 Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>
6547
6548 * res.rc (STRINGTABLE): Add IDS_CYGWIN_SETUP and
6549 IDS_CYGWIN_SETUP_WITH_PROGRESS strings.
6550 * resource.h: Add IDS_CYGWIN_SETUP and
6551 IDS_CYGWIN_SETUP_WITH_PROGRESS IDs.
6552
6553 * splash.cc (OnInit): Qualify SetWindowText() call with global scope
6554 operator (::SetWindowText()).
6555
6556 * threebar.cc: Run indent.
6557 (cistring.h): Add include.
6558 (SetText1, SetText2, SetText3): Qualify SetWindowText() call with
6559 global scope operator.
6560 (SetBar2): Add logic for writing percent complete into window title.
6561
6562 * window.h: Run indent.
6563 (SetWindowText): New function.
6564 (String): Add forward declaration.
6565 * window.cc: Run indent.
6566 (String++.h): Add include.
6567 (SetWindowText): New function.
6568
490717ef
RC
65692002-02-24 Robert Collins <rbtcollins@hotmail.com>
6570
6571 * README: Update TODO list.
6572 * install.cc (install_one): Fix src package location.
6573 (do_install_thread): Fix creating directories.
6574
7c6ef2c3
RC
65752002-02-19 Robert Collins <rbtcollins@hotmail.com>
6576
6577 * choose.cc: Include cygpackage.h for scan2 use.
6578 (set_existence): Ignore setup.ini mirrors when installing from cwd.
6579 (scan2): Process any valid file.
58b12a06
MB
6580 Add cache entries when a file matching a setup.ini listed version is
6581 found.
7c6ef2c3
RC
6582 * filemanip.cc (parse_filename): Remove pkgtar - not used anywhere else.
6583 * filemanip.h (filemanip::pkgtar): Remove.
6584 * package_meta.cc (CategoryPackage::~CategoryPackage): New method.
6585 (packagemeta::~packagemeta): Move from package_meta.h
6586 Remove and delete all version and category information.
6587 * package_meta.h (CategoryPackage): Create a destructor.
6588 (packagemeta::~packagemeta): Move to .cc file.
6589
65902002-02-19 Robert Collins <rbtcollins@hotmail.com>
6591
6592 * install.cc (install_one_source): Make NULL cached package names cause
6593 errors.
6594
bb087dce
RC
65952002-02-18 Michael A Chase <mchase@ix.netcom.com>
6596
6597 * desktop.cc (make_passwd_group): Don't create passwd-grp.bat
6598 unnecessarily.
6599
66002002-02-18 Michael A Chase <mchase@ix.netcom.com>
6601
6602 * log.cc (log_save): Put "\n" at end of log lines instead of "'".
6603
c90bc3df
RC
66042002-02-19 Robert Collins <rbtcollins@hotmail.com>
6605
6606 * mount.cc (create_mount): Avoid a const char*->char* warning.
6607 (read_mounts): Ditto.
6608
3bab9a49
RC
66092002-02-05 Jason Tishler <jason@tishler.net>
6610
58b12a06 6611 * download.cc (do_download_thread): Fix off-by-one error.
3bab9a49 6612
1ac649ed
RC
66132002-02-19 Robert Collins <rbtcollins@hotmail.com>
6614
6615 * configure.in (CXXFLAGS): Substitute at configure time, not runtime.
6616 * configure (CXXFLAGS): Regenerate.
6617 * Makefile.in (iniparse.o): Build via default rules - no errors now.
6618 * README: TODO list updates.
6619
66202002-02-19 Michael A Chase <mchase@ix.netcom.com>
6621
6622 * String++.cc (String::concat):: Remove.
6623 (String::vconcat):: Ditto.
6624 * String++.h (String::concat):: Remove.
6625 (String::vconcat):: Ditto.
6626 * archive_tar.cc: Don't include concat.h.
6627 * archive_tar_file.cc: Don't include concat.h.
6628 * compress_bz.cc (compress_bz::peek): Don't log unneeded messages.
6629 (compress_bz::seek): Ditto.
6630 (compress_bz::~compress_bz): Ditto.
6631 * compress_gz.cc (compress_gz::peek): Ditto.
6632 (compress_gz::error): Ditto.
6633 (compress_gz::~compress_gz): Ditto.
6634 * concat.cc (vconcat): Remove.
6635 (concat): Ditto.
6636 * concat.h (vconcat): Remove.
6637 (concat): Ditto.
6638 * desktop.cc (desktop_icon): Use new cygpath.
6639 (make_etc_profile): Ditto.
6640 (uexists): Ditto.
6641 (make_passwd_group): Ditto.
6642 (save_icon): Ditto.
6643 (check_desktop): Remove concat use.
6644 (check_start_menu): Ditto.
6645 * download.cc (download_one): Use new mkpath_p correctly.
6646 Use LOG_PLAIN.
6647 * fromcwd.cc: Don't include concat.h.
6648 * geturl.cc (get_url_to_membuf): Use String log() call.
6649 (get_url_to_file): Ditto.
6650 * install.cc: Don't include concat.h.
6651 (uninstall_one): Use LOG_PLAIN.
6652 (replace_one): Ditto.
6653 (install_one_source): Ditto.
6654 (install_one): More char to String conversion.
6655 (do_install_thread): Use new cygpath.
6656 Use new create_mount.
6657 * io_stream.cc (io_stream::move): Use new log().
58b12a06
MB
6658 * io_stream_cygfile (io_stream_cygfile::io_stream_cygfile): Use new
6659 cygpath.
1ac649ed
RC
6660 (io_stream_cygfile::exists): Ditto.
6661 (io_stream_cygfile::remove): Ditto.
6662 (io_stream_cygfile::mklink): Ditto.
6663 (io_stream_cygfile::write): Ditto.
6664 (cygmkdir_p): Ditto.
6665 (io_stream_cygfile::move): Ditto.
6666 * io_stream_file.cc: Don't include log.h.
6667 (io_stream_file::write): Don't log unneeded messages.
6668 * localdir.cc: Don't include concat.h.
6669 (LocalDirPage::OnNext): Use LOG_PLAIN.
6670 * log.cc: Don't include log.h.
6671 (exit_setup): Use new cygpath.
6672 * log.h (log_level): Add new level LOG_PLAIN.
6673 * main.cc (WinMain): Use new log().
6674 * mount.cc (SLASH_P): New macro from concat.h.
6675 (cygpath): Make String version globally visible.
6676 Remove varargs version.
6677 * mount,h: Ditto.
6678 * msg.cc (mbox): Use LOG_PLAIN.
6679 * net.cc (NetPage::OnNext): Ditto.
6680 * nio-ftp.cc (ftp_line): Use new log().
6681 * nio-http.cc: Don't include log.h.
6682 (retry_get): Use alternative url variable.
6683 * package_db.cc: Don't include concat.h.
6684 (packagedb::flush): Don't use concat.
6685 * package_meta.cc: Don't include concat.h.
6686 (packagemeta::uninstall): Use new cygpath.
6687 * postinstall.cc (do_postinstall): Ditto.
6688 * root.cc (RootPage::OnNext): Use LOG_PLAIN.
6689 * script.cc: Don't include concat.h.
6690 (init_run_script): Use new cygpath.
6691 (run_script): More char * to String conversion.
6692 (try_run_script): Ditto.
6693 * site.cc: Don't include concat.h.
6694 (SitePage::OnNext): Use LOG_PLAIN.
6695 (SitePage::OnMessageCmd): Use new log().
6696 * source.cc (SourcePage::OnDeactivate): Use LOG_PLAIN.
6697
3c054baf
RC
66982002-02-19 Robert Collins <rbtcollins@hotmail.com>
6699
6700 * Makefile.in (OBJS): Add new object.
58b12a06
MB
6701 * PickCategoryLine.cc (PickCategoryLine::paint): Print a "+" before the
6702 name.
3c054baf
RC
6703 * PickCategoryLine.h (PickCategoryLine::bucket): Use the String class.
6704 * PickLine.h (Pickline::key): Change to a String to help plug leaks.
6705 (PickLine::Pickline): Accept a String for the key.
58b12a06
MB
6706 * PickPackageLine.cc (PickPackageLine::paint): Convert all char use to
6707 Strings.
6708 * PickPackageLine.h (PickPackageLine::PickPackageLine): The key is
6709 automatically initialised now.
3c054baf 6710 * PickView.cc (PickView::note_width): Convert all char * use to Strings.
58b12a06
MB
6711 (PickView::init_header): Move category length checking out of the inner
6712 loop for efficiency.
3c054baf
RC
6713 Convert all char use to Strings.
6714 * PickView.h: Include the String++ header.
6715 (PickView::note_width): Update the prototype.
6716 * String++.cc: New file, implements a reference counting string class.
6717 * String++.h: New file, declares a reference counting string class.
6718 * archive.cc: Include String++ instead of concat.
6719 (archive::extract_file): Convert char * usage to Strings.
6720 * archive.h: Inlude the String++ header.
6721 (archive::extract_file): Update prototype.
6722 (archive::next_file_name): Convert to a String.
6723 (archive::linktarget): Ditto.
6724 * archive_tar.cc (archive_tar::next_file_name): Convert to String usage.
6725 (archive_tar::linktarget): Ditto.
6726 * arhive_tar.h: Update the copyright.
6727 Explicitly include the relevant headers.
6728 (tar_map_result_type): Convert to String usage.
6729 (archive_tar::next_file_name): Update prototype.
6730 (archive_tar::linktarget): Ditto.
6731 * category.cc (Category::Category): Update initialisers.
6732 Convert to String usage.
6733 (Categorycmp): Update to String usage.
6734 * category.h: Include the String++ header.
6735 (Category::Category): Update to String usage.
6736 (Category::name): Ditto.
6737 (Category::key): Ditto.
6738 * choose.cc: Remove concat.h, it's not needed.
6739 (scan2): Update to String usage.
6740 (do_choose): Ditto.
6741 * cygpackage.cc: Update includes for use of String class.
6742 (cygpackage::cygpackage): Update for String usage.
6743 (cygpackage::set_canonical_version): Ditto.
6744 (cygpackage::destroy): Ditto.
6745 (cygpackage::getfirstfile): Ditto.
6746 (cygpackage::getnextfile): Ditto.
6747 (cygpackage::Name): Ditto.
6748 (cygpackage::Vendor_version): Ditto.
6749 (cygpackage::Package_version): Ditto.
6750 (cygpackage::Canonical_version): Ditto.
6751 (cygpackage::set_sdesc): Ditto.
6752 (cygpackage::set_ldesc): Ditto.
6753 * cygpackage.h: Include String++.h for parsing this file.
6754 (cygpackage::cygpackage): Update for String usage.
6755 (cygpackage::set_canonical_version): Ditto.
6756 (cygpackage::destroy): Ditto.
6757 (cygpackage::getfirstfile): Ditto.
6758 (cygpackage::getnextfile): Ditto.
6759 (cygpackage::Name): Ditto.
6760 (cygpackage::Vendor_version): Ditto.
6761 (cygpackage::Package_version): Ditto.
6762 (cygpackage::Canonical_version): Ditto.
6763 (cygpackage::set_sdesc): Ditto.
6764 (cygpackage::set_ldesc): Ditto.
6765 (cygpackage::name): Ditto.
6766 (cygpackage::vendor): Ditto.
6767 (cygpackage::packagev): Ditto.
6768 (cygpackage::canonical): Ditto.
6769 (cygpackage::fn): Ditto.
6770 (cygpackage::sdesc): Ditto.
6771 (cygpackage::ldesc): Ditto.
6772 * desktop.cc: Update includes for use of String class.
6773 (batname): Update for String usage.
6774 (iconname): Ditto.
6775 (make_link): Ditto.
6776 (start)menu): Ditto.
6777 (desktop_icon): Ditto.
6778 (make_cygwin_bat): Ditto.
6779 (make_etc_profile): Ditto.
6780 (uexists): Ditto.
6781 (make_passwd_group): Ditto.
6782 (save_icon): Ditto.
6783 (check_desktop): Ditto.
6784 (check_startmenu): Ditto.
6785 * dialog.cc (eget): Update for String usage.
6786 (egetString): New function.
6787 (eset): New variant for Strings.
6788 * dialog.h: Include String++.h for parsing this file.
6789 (egetString): New function.
6790 (eset): New variant for Strings.
6791 * diskfull.cc (diskfull): Update for String usage.
6792 * diskfull.h: Include String++.h for parsing this file.
6793 (diskfull): Update for String usage.
6794 * download.cc: Update includes for use of String class.
6795 (check_for_cached): Update for String usage.
6796 (download_one): Ditto.
6797 * filemanip.cc (get_file_size): Ditto.
6798 (base): Ditto.
6799 (parse_filename): Ditto.
6800 (backslash): Ditto.
6801 * filemanip.h: Include String++.h for parsing this file.
6802 (fileparse): Update for String usage.
6803 (base): Ditto.
6804 (parse_filename): Ditto.
6805 Don't consider '_' to be a separator.
6806 (backslash): Ditto.
6807 * find.cc: Update includes for use of String class.
6808 (find_sub): Make more flexible.
6809 (find): Update for String usage.
6810 * find.h (find): Use Strings.
6811 * fromcwd.cc (found_file): Update for String usage.
6812 * geturl.cc: Ditto.
6813 (init_dialog): Ditto.
6814 (get_url_to_membuf): Ditto.
6815 (get_url_to_string): Ditto.
6816 (get_url_to_file): Ditto.
6817 * geturl.h: Ditto.
6818 (get_url_to_membuf): Ditto.
6819 (get_url_to_string): Ditto.
6820 (get_url_to_file): Ditto.
6821 * hash.h: Ditto.
6822 (add_subdirs): Ditto.
6823 * ini.cc: Update includes for String usage.
6824 (find_routine): Update for String usage.
6825 (do_remote_ini): Ditto.
6826 (do_ini_thread): Ditto.
6827 * ini.h (ini_init): Ditto.
6828 * inilex.l: Update includes for String usage.
6829 (ini_init): Update for String usage.
6830 * iniparse.y: Ditto.
6831 (add_correct_version): Ditto.
6832 * install.cc: Update includes for String usage.
6833 (install_one_source): Update for String usage.
6834 (uninstall_one): Ditto.
6835 (replace_one): Ditto.
6836 (install_one_source): Ditto.
6837 (do_install_thread): Ditto.
6838 * io_stream.cc: Update includes for String usage.
6839 (io_stream::open): Update for String usage.
6840 (io_stream::mkpath_p): Ditto.
6841 (io_stream::remove): Ditto.
6842 (io_stream::mklink): Ditto.
6843 (io_stream::move_copy): Ditto.
6844 (io_stream::move): Ditto.
6845 (io_stream::exists): Ditto.
6846 * io_stream.h: Update includes to allow correct parsing.
6847 (io_stream::open): Update for String usage.
6848 (io_stream::mkpath_p): Ditto.
6849 (io_stream::remove): Ditto.
6850 (io_stream::mklink): Ditto.
6851 (io_stream::move_copy): Ditto.
6852 (io_stream::move): Ditto.
6853 (io_stream::exists): Ditto.
6854 * io_stream_cygfile.cc: Update includes for String usage.
6855 (get_root_dir_now): Update for String usage.
6856 (io_stream_cygfile::io_stream_cygfile): Ditto.
6857 (io_stream_cygfile::~io_stream_cygfile): Ditto.
6858 (io_stream_cygfile::exists): Ditto.
6859 (io_stream_cygfile::remove): Ditto.
6860 (io_stream_cygfile::mklink): Ditto.
6861 (cygmkdir_p): Ditto.
6862 (io_stream_cygfile::set_mtime): Ditto.
6863 (io_stream_cygfile::move): Ditto.
6864 (io_stream_cygfile::get_size): Ditto.
6865 * io_stream_cygfile.h: Update includes for String usage.
6866 (io_stream_cygfile::io_stream_cygfile): Update for String usage.
6867 (io_stream_cygfile::~io_stream_cygfile): Ditto.
6868 (io_stream_cygfile::exists): Ditto.
6869 (io_stream_cygfile::remove): Ditto.
6870 (io_stream_cygfile::mklink): Ditto.
6871 (cygmkdir_p): Ditto.
6872 (io_stream_cygfile::set_mtime): Ditto.
6873 (io_stream_cygfile::move): Ditto.
6874 (io_stream_cygfile::get_size): Ditto.
6875 (io_stream_cygfile::fname): Ditto.
6876 (io_stream_cygfile::lmode): Ditto.
6877 * io_stream_file.cc: Update includes for String usage.
6878 (io_stream_file::io_stream_file): Update for String usage.
6879 (io_stream_file::~io_stream_file): Ditto.
6880 (io_stream_file::exists): Ditto.
6881 (io_stream_file::remove): Ditto.
6882 (io_stream_file::mklink): Ditto.
6883 (io_stream_file::set_mtime): Ditto.
6884 (io_stream_file::move): Ditto.
6885 (io_stream_file::get_size): Ditto.
6886 * io_stream_file.h: Update includes for String usage.
6887 * io_stream_file.cc: Update includes for String usage.
6888 (io_stream_file::io_stream_file): Update for String usage.
6889 (io_stream_file::~io_stream_file): Ditto.
6890 (io_stream_file::exists): Ditto.
6891 (io_stream_file::remove): Ditto.
6892 (io_stream_file::mklink): Ditto.
6893 (io_stream_file::set_mtime): Ditto.
6894 (io_stream_file::move): Ditto.
6895 (io_stream_file::get_size): Ditto.
6896 (io_stream_file::fname): Ditto.
6897 (io_stream_file::lmode): Ditto.
6898 * localdir.cc: Update includes for String usage.
6899 (save_local_dir): Update for String usage.
6900 (check_if_enable_next): Ditto.
6901 (load_dialog): Ditto.
6902 (browse_cb): Ditto.
6903 (LocalDirPage::OnInit): Ditto.
6904 (LocalDirPage::OnNext): Ditto.
6905 * log.cc: Update includes for String usage.
6906 (struct LogEnt): Update for String usage.
6907 (log): Ditto.
6908 (log_save): Ditto.
6909 (exit_setup): Ditto.
6910 * log.h: Update includes for String usage.
6911 (log_level): Update for String usage.
6912 (log): Ditto.
6913 (log_save): Ditto.
6914 * main.cc (WinMain): Update for String usage.
6915 * mklink2.c (make_link_2): Update for String usage.
6916 * mklink2.h (make_link_2): Update for String usage.
6917 * mount.cc: Update includes for String usage.
6918 (mount_table): Update for String usage.
6919 (find2): Ditto.
6920 (create_mount): Ditto.
6921 (remove1): Ditto.
6922 (remove_mount): Ditto.
6923 (read_mounts): Ditto.
6924 (set_root_dir): Ditto.
6925 (get_root_dir): Ditto.
6926 (path_prefix_p): Ditto.
6927 (cygpath): Ditto.
6928 * mount.h: Update includes for String usage.
6929 (create_mount): Update for String usage.
6930 (remove_mount): Ditto.
6931 (cygpath): Ditto.
6932 (set_root_dir): Ditto.
6933 (get_root_dir): Ditto.
6934 * msg.cc (mbox): Ditto.
6935 * net.cc (NetPage::OnNext): Ditto.
6936 * package_db.cc (packagedb::flush): Ditto.
6937 (packagedb::packages): Ditto.
6938 (packagedb::categories): Ditto.
6939 * package_db.h: Update includes for String usage.
6940 (packagedb::packages): Update for String usage.
6941 (packagedb::categories): Ditto.
6942 * package_meta.cc: Update includes for String usage.
6943 (hash::add_subdirs): Update for String usage.
6944 (packagemeta::uninstall): Ditto.
6945 (packagemeta::SDesc): Ditto.
6946 (packagemeta::action_caption): Ditto.
6947 * package_meta.h: Update includes for String usage.
6948 (packagemeta::packagemeta): Update for String usage.
6949 (packagemeta::~packagemeta): Ditto.
6950 (packagemeta::uninstall): Ditto.
6951 (packagemeta::SDesc): Ditto.
6952 (packagemeta::action_caption): Ditto.
6953 (package_source.cc site::site): Ditto.
6954 (packagesource::set_canonical): Ditto.
6955 (packagesource::set_cached): Ditto.
6956 * package_source.h: Update includes for String usage.
6957 (site::site): Update for String usage.
6958 (packagesource::set_canonical): Ditto.
6959 (packagesource::set_cached): Ditto.
6960 (packagesource::packagesource): Ditto.
6961 (packagesource::sites): Ditto.
6962 (packagesource::cached): Ditto.
6963 * package_version.h: Update includes for String usage.
6964 (Dependency): Update for String usage.
6965 (packageversion): Ditto.
6966 * postinstall.cc: Update includes for String usage.
6967 (do_postinstall): Update for String usage.
6968 * res.rc (IDD_LOCAL_DIR): Fix typo again!
6969 * rfc1738.cc (rfc1738_escape_part): Update for String usage.
6970 * rfc1738.h: Update includes for String usage.
6971 (rfc1738_escape_part): Update for String usage.
6972 * root.cc: Update includes for String usage.
6973 (check_if_enable_next): Update for String usage.
6974 (save_dialog): Ditto.
6975 (browse_cb): Ditto.
6976 (directory_is_absolute): Ditto.
6977 (directory_is_rootdir): Ditto.
6978 (directory_has_spaces): Ditto.
6979 (RootPage::OnInit): Ditto.
6980 (RootPage::OnNext): Ditto.
6981 * script.cc: Update includes for String usage.
6982 (init_run_script): Update for String usage.
6983 (run): Ditto.
6984 (run_script): Ditto.
6985 (try_run_script): Ditto.
6986 * script.h: Update includes for String usage.
6987 (run_script): Update for String usage.
6988 (try_run_script): Ditto.
6989 * site.cc site_list): Ditto.
6990 (all_site_list): Ditto.
6991 (other_url): Eliminate.
6992 (site_list_type::init): Update for String usage.
6993 (site_list_type::site_list_type): Ditto.
6994 (get_site_list): Ditto.
6995 (get_saved_sites): Ditto.
6996 (do_download_site_info_thread): Ditto.
6997 (SitePage::OnNext): Ditto.
6998 (SitePage::OnActivate): Ditto.
6999 (SitePage::PopulateListBox): Ditto.
7000 (SitePage::OnMessageCmd): Handle empty url's.
7001 * site.h: Update includes for String usage.
7002 (site_list_type::site_list_type): Update for String usage.
7003 (site_list_type::init): Ditto.
7004 (site_list_type::~site_list_type): Ditto.
7005 (site_list_type::url): Ditto.
7006 (site_list_type::displayed_url): Ditto.
7007 (site_list_type::key): Ditto.
7008 * source.cc (SourcePage::OnDeactivate): Ditto.
7009 * state.h: Update includes for String usage.
7010 (local_dir): Update for String usage.
7011 (trust_level): Remove.
7012 * version.cc: Update includes for String usage.
7013 (canonicalize_version): Update for String usage.
7014 * version.h: Update includes for String usage.
7015 (canonicalize_version): Update for String usage.
7016
08233ec7
CF
70172002-02-15 Christopher Faylor <cgf@redhat.com>
7018
7019 * filemanip.c (parse_filename): Revert previous change.
7020
94dffbdd
CF
70212002-02-14 Christopher Faylor <cgf@redhat.com>
7022
7023 * filemanip.c (parse_filename): Don't treat '_' as a version number
7024 introducer.
7025
cef493d7
CF
70262002-01-29 Christopher Faylor <cgf@redhat.com>
7027
7028 * configure: Regenerate.
7029
57219197
RC
70302002-01-27 Robert Collins <rbtcollins@hotmail.com>
7031
94dffbdd
CF
7032 * res.rc (IDD_LOCAL_DIR): Fix typo reported by Rene
7033 <Hoeck@extern.lrz-muenchen.de>
57219197 7034
cc7493c3
RC
70352002-01-27 Robert Collins <rbtcollins@hotmail.com>
7036
7037 * README: Update Todo's.
7038 * list.h: Run indent.
7039 (list): New methods checksize and insert to reduce code duplication.
7040 (list::registerbykey): Use them.
7041 (list::registerbyobject): Ditto.
94dffbdd
CF
7042 (list::removebyindex): Copy each object individually - safe for non
7043 trivial objects.
cc7493c3
RC
7044 (list::checksize): Implement.
7045 (list::insert): Implement.
7046
a900d1fa
RC
70472002-01-27 Robert Collins <rbtcollins@hotmail.com>
7048
7049 * Makefile.in: Remove the dlmalloc object by default.
94dffbdd
CF
7050 * install.cc (do_install_thread): Remove the mallinfo call for 'working
7051 around' the crashing issue.
a900d1fa 7052 * package_db.h: Include <string.h> - it's needed to parse this.
94dffbdd 7053 * package_source.cc (site::site): Move here from the header file.
a900d1fa
RC
7054 * package_source.h (site): Stop the constructor being inlinable.
7055
9835fb4a
RC
70562002-01-26 Robert Collins <rbtcollins@hotmail.com>
7057
7058 * filemanip.cc (find_tar_ext): Add a descriptive comment.
7059
70602002-01-25 Michael A Chase <mchase@ix.netcom.com>
7061
7062 * filemanip.cc (find_tar_ext): Clean up tests for .tar.gz and .tar.
7063 * fromcwd.cc (do_fromcwd): Expand FIXME comment in source file check.
94dffbdd
CF
7064 * install.cc (install_one_source): Add space between words in log()
7065 call.
cef493d7 7066
77ba23d8
RC
70672002-01-22 Robert Collins <rbtcollins@hotmail.com>
7068
94dffbdd
CF
7069 * log.cc (exit_setup): When saving to the download dir, explicity
7070 specify the path.
77ba23d8 7071
6dc75764
RC
70722002-01-22 Robert Collins <rbtcollins@hotmail.com>
7073
94dffbdd
CF
7074 * archive.cc (extract_file): Separate out the prefix and the URL
7075 scheme.
6dc75764 7076 * archive.h (archive::extract_file): Ditto.
94dffbdd
CF
7077 * install.cc (install_one_source): Ditto. Use the new
7078 archive::extract_file syntax.
6dc75764
RC
7079 (replace_one): Use the new syntax.
7080 (io_stream.cc): Add some log info for links.
7081
7e8fc33c
RC
70822002-01-22 Robert Collins <rbtcollins@hotmail.com>
7083
7084 * PickCategoryLine.cc (PickCategoryLine::actiontext): Remove.
7085 (PickCategoryLine::paint): Use the new action method.
7086 (PickCategoryLine::click): Set the action for all children.
7087 (PickCategoryLine::set_action): New method.
7088 * PickCategoryLine.h (PickCategoryLine::-actions): Remove.
7089 (PickCategoryLine::current_default): Use packagemeta _actions class.
94dffbdd
CF
7090 * PickLine.h (PickLine::set_action): New abstract method that requires
7091 including package_meta.h.
7e8fc33c
RC
7092 * PickPackageLine.cc (PickPackageLine::set_action): New method.
7093 * PickPackageLine.h (PickPackageLine::set_action): Declare this.
7094 * list.h (getbykey): A const correctness fix.
7095 * package_meta.cc: Run indent.
7096 (packagemeta::Default_action): New const.
7097 (packagemeta::Install_action): Ditto.
7098 (packagemeta::Reinstall_action): Ditto.
7099 (packagemeta::Uninstall_action): Ditto.
7100 (packagemeta::_actions::caption): New method.
7101 (packagemeta::_actions::operator++): Ditto.
7102 (packagemeta::set_action): New overload.
7103 * package_meta.h (packagemeta::_actions): New class.
7104 (packagemeta::set_action): Declare this.
7105
2c9254b6
RC
71062002-01-22 Robert Collins <rbtcollins@hotmail.com>
7107
7108 * Makefile.in (OBJS): Remove supp.o - it appears accidental.
7109 * choose.cc: Don't define alloca anymore, it's done in win32.h
7110
97647369
RC
71112002-01-22 Robert Collins <rbtcollins@hotmail.com>
7112
7113 * PickPackageLine.cc: New file.
7114 * PickPackageLine.h: New file.
7115 * PickLine.cc: New file.
7116 * PickLine.h: New file.
7117 * PickCategoryLine.cc: New file.
7118 * PickCategoryLine.h: New file.
7119 * PickView.cc: New file.
7120 * PickView.h: New file.
7121 * Makefile.in: Add new objects to setup.exe.
7122 Backout -fno-exceptions option.
7123 * choose.cc: Include PickView.h.
7124 Remove view related defines and static variables.
7125 (_pkg_headers): Moved to PickView.cc.
7126 (_cat_headers): Ditto.
7127 (view::views::Unknown): Ditto.
7128 (view::views::PackageFull):
7129 (view::views::Package):
7130 (view::views::Category):
7131 (pkgtrustp): Moved to package_meta.cc.
7132 (add_required): Moved to package_meta.cc.
7133 (pick_category_line::empty): Moved to PickCategoryLine.cc
7134 (paint): Adjust for moved static variables.
7135 (view::scroll): Moved to PickView.cc.
7136 (list_vscroll): Adjust for moved static variables.
7137 (list_hscroll): Ditto.
7138 (list_click): Ditto.
7139 (note_width): Moved to PickView.cc.
7140 (view::view): Ditto.
7141 (view::set_view_mode): Ditto.
7142 (view::mode_caption): Ditto.
7143 (view::views::caption): Ditto.
7144 (view::set_headers): Ditto.
7145 (DoInsertItem): Ditto.
7146 (view::init_headers): Ditto.
7147 (view::insert_pkg): Ditto.
7148 (view::insert_category): Ditto.
7149 (view::clear_view): Ditto.
7150 (view::views::operator++): Ditto.
7151 (view::click): Ditto.
7152 (default_trust): Adjust for moved statics.
7153 (pick_pkg_line::paint): Moved to PickPackageLine.cc.
7154 (pick_pkg_line::click): Ditto.
7155 (pick_category_line::actiontext): Moved to PickCategoryLine.cc
7156 (pick_category_line::paint): Ditto.
7157 (pick_category_line::click): Ditto.
7158 (set_view_mode): Adjust for moved statics.
7159 (create_listview): Ditto.
58b12a06
MB
7160 * choose.h: Remove Category and packagemeta forward defines -
7161 not needed.
97647369
RC
7162 Don't include unneeded headers list and package_meta.
7163 (_header): Move to PickView.h.
7164 (pick_line): Move to PickLine.h.
7165 (pick_pkg_line): Move to PickPackageLine.h.
7166 (pick_category_line): Move to PickCategoryLine.h.
7167 (view): Move to PickView.h.
7168 * ini.h (trusts): Move to package_meta.h.
7169 * package_meta.h (trusts): New enum.
7170 (packagemeta::set_requirements): New helper method.
7171 (packagemeta::trustp): Ditto.
7172
b566778e
CF
71732002-01-21 Christopher Faylor <cgf@redhat.com>
7174
7175 * choose.h (view): Move forward declaration of views into public area
7176 or g++ v3 will complain.
7177
f71e9756
CF
71782002-01-21 Christopher Faylor <cgf@redhat.com>
7179
7180 * Makefile.in (CXXFLAGS): Add -fno-exceptions.
7181 * win32.h (alloca): Define as __builtin_alloca.
7182 * io_stream_memory.cc: Add include file.
7183
e9440f0f
RC
71842002-01-21 Robert Collins <rbtcollins@hotmail.com>
7185
58b12a06
MB
7186 * archive_tar.cc (archive_tar::~archive_tar): Mark the stream as
7187 destroyed.
e9440f0f
RC
7188 * archive_tar_file.cc (archive_tar_file::~archive_tar_file): Ditto.
7189 * compress.cc (compress::~compress): Be less verbose.
7190 * compress_bz.cc (compress_bz::~compress_bz): Ditto.
7191 Mark the stream as destroyed.
58b12a06
MB
7192 * compress_gz.cc (compress_gz::~compress_gz): Mark the stream as
7193 destroyed.
7194 * io_stream.cc (io_stream::~io_stream): Only warn when the stream is not
7195 marked as destroyed.
cef493d7 7196 * io_stream_cygfile.cc (io_stream_cygfile::~io_stream_cygfile): Mark the
e9440f0f
RC
7197 stream as destroyed.
7198 * io_stream_file.cc (io_stream_file::~io_stream_file): Ditto.
7199 * io_stream_memory.cc (io_stream_memory::~io_stream_memory): Ditto.
cef493d7 7200
5e0464a1
RC
72012002-01-21 Robert Collins <rbtcollins@hotmail.com>
7202
7203 * Makefile.in (CFLAGS): Allow customisable malloc debug flags.
7204 (OBJS): Link in malloc objects.
7205 * category.cc (category): Use new char, not strdup.
7206 * choose.cc (pick_pkg_line::paint): Allow for the regionsize to shrink.
7207 (do_choose): Use new char, not malloc.
7208 * concat.cc (vconcat): Ditto.
7209 * cygpackage.cc (cygpackage): Use new char, not strdup.
7210 (set_canonical_version): Ditto.
7211 (cygpackage::destroy): Use delete[], not free.
7212 * desktop.cc (uexists): Ditto.
7213 * dialog.cc (egest): Use new char, not strdup.
7214 * dlmalloc.c: New file - Doug Lea's malloc 2.7.0
7215 * hash.cc (hash::hash): Use delete instead of free.
7216 (hash::add): Use new char, not strdup.
7217 * ini.cc (do_remote_ini): Use delete[] not free.
7218 * inilex.l: Use new char, not strdup.
7219 (ini_init): Ditto.
7220 * iniparse.y: Ditto.
7221 Use a local package_db rather than a static one.
7222 * install.cc (struct mallinfo): Workaround an apparent dlmalloc bug.
7223 (do_install_thread): Call mallinfo to force a consistency check. Appears
7224 to fix a 'inuse' error in -DDEBUG builds.
7225 Use delete[] for strings.
58b12a06
MB
7226 * io_stream_cygfile.cc (io_stream_cygfile::io_stream_cygfile): Use new
7227 char, not strdup.
5e0464a1
RC
7228 (io_stream_cygfile::~io_stream_cygfile): Use delete[], not free.
7229 (io_stream_cygfile::remove): Use new char, not strdup.
58b12a06
MB
7230 * io_stream_file.cc (io_stream_file::io_stream_file): Use new char, not
7231 strdup.
5e0464a1
RC
7232 (io_stream_file::io_stream_file): Use delete[], not free.
7233 (io_stream_file::remove): Use new char, not strdup.
7234 * io_stream_memory.cc (memblock::~memblock): Use delete[], not free.
7235 * io_stream_memory.h (memblock): Use new char, not malloc.
7236 * localdir.cc (LocalDirPage::OnInit): Use new char, not strdup.
7237 * main.cc (WinMain): Use new char, not strdup.
7238 * mount.cc (find2): Use new char, not malloc.
7239 (read_mounts): Ditto.
7240 (cygpath): Use new char, not strdup.
7241 * netio.cc (NetIO::~NetIO): Use delete[], not free.
7242 (NetIO::set_url): Use new char, not strdup.
7243 (NetIO::get_ftp_auth): Use delete[], not free.
7244 * nio-ftp.cc (NetIO_FTP::NetIO_FTP): Ditto.
7245 Use new char instead of strdup.
7246 * nio-http.cc (base64_encode): Use new char, not malloc.
7247 * package_meta.cc (hash::add_subdirs): Use new char instead of strdup.
7248 * package_source.h (~ packagesource): Use delete[] instead of delete.
7249 * port.h (strdup): Deprecate the use of strdup.
7250 * rfc1738.cc (rfc1738_do_escape): Use new char, not calloc.
7251 * script.cc (init_run_script): Us delete[], not free.
7252 (run_script): Ditto.
7253 * simpsock.cc (SimpleSocket::fill): Use new char, not malloc.
7254 (SimpleSocket::invalidate): Use delete[], not free.
7255 * site.cc (site_list_type::init): Use new char instead of strdup.
7256 * site.h (~site_list_type): Use delete[], not free.
7257
ad3c7385
RC
72582002-01-20 Robert Collins <rbtcollins@hotmail.com>
7259
7260 * Makefile.in (OBJS): Add win32.o - win32 support functions.
7261 * README: Update todos.
58b12a06
MB
7262 * archive.cc (extract_file): Support a suffix for appending to extracted
7263 files.
ad3c7385
RC
7264 * archive.h: Ditto.
7265 * choose.cc (set_view_mode): Use the new view::views class.
7266 (view::views::Unknown): New static for defaulting view::views variables.
7267 (view::views::PackageFull): New static for the current view.
7268 (view::views::Package): Ditto.
7269 (view::views::Category): Ditto.
7270 (topbucket::paint): Remove.
7271 (topbucket::empty): Rename to pick_category_line::empty.
7272 (topbucket::~topbucket): Remove.
7273 (paint): Use the new view::views class.
7274 Don't paint 'all' as a category when showing package categoies.
7275 (pick_category_line::actiontext): New method.
58b12a06
MB
7276 (pick_category_line::paint): Make showing the category optional, and
7277 show the 'category action'.
ad3c7385 7278 (pick_category_line::click): Make showing the category optional, and
58b12a06
MB
7279 differentiate between the name being clicked, and the action
7280 description.
ad3c7385
RC
7281 (view::view): Use the new view::views class.
7282 (view::set_view_mode): Ditto.
7283 (view::mode_caption): Ditto.
7284 (view::views::caption): New method.
7285 (view::set_headers): Use the new view::views class.
7286 (view::clear_view): Ditto.
cef493d7 7287 (viewsplusplus): Replaced by
ad3c7385
RC
7288 (view::views::operator++): New operator.
7289 (set_view_mode): Use the new view::views class.
7290 (create_listview): Ditto.
7291 (dialog_cmd): Ditto.
7292 * choose.h (actions): Remove.
7293 (views): Remove.
7294 (pick_line): Add a new convenience constructor.
7295 (top_bucket): Remove.
7296 (pick_category_line): Reparent under pick_line, and adsorb top_bucket.
7297 (view::views): New class.
7298 * ini.h: Don't include choose.h
7299 (is_download_action): Remove.
7300 (is_upgrade_action): Remove.
7301 (is_uninstall_action): Remove.
7302 (is_full_action): Remove.
7303 * install.cc (num_replacements): New static.
7304 (rebootneeded): Ditto.
7305 (replace_one): Handle upgrades separate from removal or new installs.
7306 (install_one_source): Handle in use files.
7307 (install_one): Don't repeat upgrades.
7308 (do_install_thread): Initialize new statics.
7309 Order actions as uninstall, replace, install.
7310 Warn about rebooting if needed.
7311 * res.rc (IDS_REBOOT_REQUIRED): New string.
7312 * resource.h (IDS_REBOOT_REQUIRED): Give value.
7313 * win32.h: Declare class Win32, and update copyright and intent message.
7314 * win32.cc: New file.
7315
edef4f57
CV
73162002-01-15 Corinna Vinschen <corinna@vinschen.de>
7317
7318 * io_stream.cc (io_stream::gets): Eliminate trailing new line chars.
7319 * package_meta.cc (packagemeta::uninstall): Check for additional
7320 Windows shortcut. Unset R/O file attribute before trying to delete
7321 file.
7322
21f325d7
RC
73232002-01-09 Robert Collins <rbtcollins@hotmail.com>
7324
58b12a06
MB
7325 * choose.cc (pkgtrustp): Fall back to installed if a package is not
7326 present in the current trust level. For prev, fall back via curr.
21f325d7
RC
7327 (set_existence): Allow sources with no sites, but cached files to be
7328 kept.
7329 (pick_category_line::paint): Start drawing clickable categories.
7330 * fromcwd.cc (found_file): Reinstate local file scanning.
7331
858f100d
RC
73322002-01-07 Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>
7333
cef493d7 7334 * fromcwd.cc: Run indent.
858f100d
RC
7335 (do_fromcwd): Reverse sense of comment. Set next_dialog
7336 to IDD_CHOOSER instead of IDD_CHOOSE.
7337 * ini.cc (find_routine): Remove "/" from "/setup.ini".
cef493d7 7338
d343da15
RC
73392001-01-07 Robert Collins <rbtcollins@hotmail.com>
7340
7341 * category.cc (Categorycmp): Add a const safe version.
7342 * category.h (Categorycmp): Add a const safe version.
7343 (Category): Add operator ==.
7344 * choose.cc (fill_missing_category): Add every package to "All".
58b12a06
MB
7345 (pick_category_line::paint): Add support for hidden labels, and a tree
7346 depth.
d343da15
RC
7347 (pick_category_line::click): Ditto.
7348 (view::view): Pass in a top level category to use.
7349 (view::insert_pkg): Special case - skip category "All".
7350 (view::insert_category): Ditto.
7351 (view::clear_view): Set the contents label state.
7352 (create_listview): Pass in a top level category to view().
7353 * choose.h (topbucket): Make bucket available to derived classes.
7354 (pick_category_line): Add support for hidden labels, and a tree depth.
7355 Remove our second copy of bucket.
7356 (view): Pass in a top level category to the constructor.
7357 Use pick_category_line to allow three level display.
7358
bcf20115
RC
73592001-01-06 Robert Collins <rbtcollins@hotmail.com>
7360
7361 * cygpackage.h (cygpackage): Make set_[s|l]desc virtual.
7362 * iniparse.y (add_correct_version): Copy descriptions across.
58b12a06
MB
7363 * package_meta.cc (SDesc): Iterate through versions, return the first
7364 with a description.
bcf20115
RC
7365 * package_version.h (packageversion): Add new virtuals set_[l|s]desc.
7366
bc78a6d5
RC
73672001-01-04 Robert Collins <rbtcollins@hotmail.com>
7368
7369 * script.cc (run_script): Change cygpath:// to cygfile://.
7370 * install.cc (do_install_thread): Fix off-by-one errors.
7371
4f4e55c2
RC
73722001-01-04 Robert Collins <rbtcollins@hotmail.com>
7373
7374 * package_db.cc (packagedb::flush): Fix an off-by-one error.
7375
8e9aa511
RC
73762002-01-04 Jan Nieuwenhuizen <janneke@gnu.org>
7377
7378 * Makefile.in (realclean): more clean.
7379 (OBJS): Add script.o.
7380 * postinstall.cc (run_script_in_etc_postinstall): New function.
7381 (do_postinstall): Split off new funtion init_run_script ().
7382 (init_run_script):
7383 (run):
7384 (run_script): Move to script.cc. Replace some deprecated remove
7385 and move calls.
7386 * script.h:
7387 * script.cc: New file.
7388 * Forward port cygwin-20010707.jcn3.patch.
7389 * package_meta.cc (uninstall): Run pre- and postremove scripts.
7390 * install.cc: Typo fix.
7391 (do_install): Run script initialisation.
cef493d7 7392
b7301c43
RC
73932001-01-04 Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>
7394
7395 * cistring.cc: Run d2u.
7396 * cistring.h: Run d2u.
7397
7398 * desktop.cc (etc_profile): Remove "test -f ./.bashrc && . ./.bashrc"
7399 from the generated /etc/profile. Bash will source this file
7400 automatically, and having this here merely results in .bashrc being
7401 executed twice. Run d2u.
7402 * desktop.h: Run d2u.
7403
7404 * propsheet.cc: Run d2u.
7405 (PropSheetProc): New function. Add minimize box here instead of in
7406 PropertyPage::DialogProc.
7407 (PropSheet::Create): Change to use creation callback PropSheetProc.
7408 (DLGTEMPLATEEX): Add 'hidden' Windows struct definition.
7409
7410 * propsheet.h: Run indent, d2u.
7411 * proppage.h: Run indent, d2u.
7412
7413 * proppage.cc: Run d2u.
7414 (PropertyPage::DialogProc): Remove minimize-box-adding
7415 functionality. Remove commented-out "PropSheet_SetWizButtons" calls.
7416 Add support for calling virtual OnMessageCmd. Add setting of fonts in
7417 WM_INITDIALOG handler.
7418 (resource.h): New include for resource IDs.
7419
7420 * res.rc: Resize and rearrange property page dialog templates
7421 to bring them in line with "Microsoft's Backward Compatible Wizard 97"
7422 specification. Run d2u.
7423 (IDD_SITE): Add an edit control and an "Add" button in order to
7424 combine the IDD_SITE and IDD_OTHER_URL functionality onto one page.
7425 (IDD_OTHER_URL): Remove dialog template.
7426 (IDD_DLSTATUS): Remove dialog template.
7427
7428 * site.cc: Run d2u.
7429 (SitePage::OnBack): Remove NEXT() macro invocation.
7430 (SitePage::OnActivate): New member function.
7431 (load_dialog): Remove. Functionality subsumed into
7432 SitePage::OnActivate.
7433 (save_dialog): Change to support both list and user URLs. Remove
7434 OTHER_IDX and mirror_idx logic.
7435 (SitePage::PopulateListBox): New member function.
7436 (SitePage::CheckControlsAndDisableAccordingly): New member function.
7437 (SitePage::OnMessageCmd): New override.
7438 (check_if_enable_next): Remove.
7439 (dialog_cmd): Remove.
7440 (do_download_site_info_thread): Remove calls to NEXT() macro.
7441 (SitePage::Create): Call the single-param PropertyPage::Create
7442 overload.
7443 (other_url): New static taken from other.cc.
7444 (SitePage::OnNext): Remove mirror_idx logic.
7445 (SitePage::OnInit): Remove "Other URL" entry from list box. Remove
7446 list box populating code, now handled in SitePage::PopulateListBox.
7447 (mirror_idx, NO_IDX, OTHER_IDX): Remove.
7448 (save_site_url): Fix potential buffer overflow problem. Switched to
7449 TCHAR in grossly premature preparation for multilingual support.
7450 * site.h: Run d2u.
7451 (SitePage::OnActivate): New member function.
7452 (SitePage::CheckControlsAndDisableAccordingly) New member.
7453 (SitePage::OnMessageCmd): New override.
7454 (do_download_site_info_thread): Add MessageBox call on failure to
7455 download site list.
7456
7457 * splash.cc: Run d2u.
7458 (SplashPage::OnInit): Set the font for the title.
7459 * splash.h: Run d2u.
7460
7461 * threebar.cc: Run d2u.
7462 * threebar.h: Run d2u.
7463
7464 * window.h: Run d2u.
7465 (Window::IsButtonChecked): New member function declaration.
7466 (Window::OnMessageCmd): New member function.
7467 (Window::SetDlgItemFont): New member function declaration.
7468 (Window::MAXFONTS, Window::Fonts, Window::FontCounter): New data
7469 members.
7470 * window.cc: Run d2u.
7471 (Window::IsButtonChecked): New member function definition.
7472 (Window::SetDlgItemFont): New member function definition.
7473 (Window::Window): Add initialization for FontCounter.
7474 (Window::~Window): Delete any fonts we created.
7475
7476 * geturl.cc: Run d2u.
7477 (progress): Remove the "3" field width from the "%3d"
7478 percent-complete format indicator. Causes line to not start at
7479 beginning of text box, and does little to help with "jumping", since
7480 the "bytes downloaded so far" field is variable-width anyway. Change
7481 kb/s format field to "%03.1" to 0-pad the kb/s number in the event of
7482 painfully slow connections, or temporary slowdowns in faster
7483 connections should such more-instantaneous functionality become
7484 available.
7485
7486 * net.h: Run d2u.
7487 (NetPage::OnMessageCmd): New member function declaration.
7488 (NetPage::CheckIfEnableNext): New member function declaration.
7489 * net.cc: Run d2u.
7490 (NetPage::OnMessageCmd): New member function definition.
7491 (dialog_cmd): Remove, subsumed into NetPage::OnMessageCmd.
7492 (check_if_enable_next): Remove.
7493 (NetPage::CheckIfEnableNext): New member function, subsumes
7494 check_if_enable_next.
7495 (propsheet.h): Add include.
7496 (NetPage::Init): Add call to CheckIfEnableNext.
7497 (load_dialog): Remove call to check_if_enable_next.
7498 (NetPage::Create): Call single-template-ID-parameter overload of
7499 PropertyPage::Create instead of three-parameter one.
7500
7501 * Makefile.in (OBJS): Remove other.o.
7502 * other.cc: Remove file.
7503
df62e023
RC
75042002-01-01 Robert Collins <rbtcollins@hotmail.com>
7505
7506 * README: Update TODO's.
7507 * choose.cc (set_existence): Delete non installed packages with no
7508 mirrors.
7509 (fill_missing_category): Fix an off-by-one error.
cef493d7 7510 (default_trust): Ditto. Also delete any unused categories.
df62e023
RC
7511 (view::init_headers): Fix an off-by-one error.
7512 (set_view_mode): Ditto.
7513 (set_view_mode): Ditto.
7514 (create_listview): Ditto.
7515 (dialog_cmd): Ditto.
7516 (do_choose): Ditto.
7517 * io_stream.cc: Indent.
7518 * io_stream.h: Ditto.
7519 * package_db.cc: Ditto.
7520 * package_meta.h: Const correctness for SDesc ();
7521 * proppage.cc: Run d2u and indent.
7522 * propsheet.cc: Run d2u and indent.
7523 * window.cc: Run d2u and indent.
7524 * window.h: Run d2u and indent.
7525
cec57ee1
CF
75262001-12-28 Christopher Faylor <cgf@redhat.com>
7527
e98c531e 7528 * Makefile.in (iniparse.o): Accommodate newer bisons.
cec57ee1 7529
ab57ceaa
RC
75302001-12-23 Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>
7531
7532 * window.h (Window): New file, new class.
7533 * window.cc (Window): New file, new class.
7534
7535 * threebar.h (ThreeBarProgressPage): New file, new class.
7536 * threebar.cc (ThreeBarProgressPage): New file, new class.
7537
7538 * splash.h (SplashPage): New file, new class.
7539 * splash.cc (SplashPage): Replace file with implementation of new
7540 class.
7541
7542 * source.h (SourcePage): New file, new class.
7543 * source.cc: Run indent.
7544 (SourcePage): Add class implementation to this file.
7545 (do_source): Remove, functionality subsumed by SourcePage::Create()
7546 and SourcePage::OnDeactivate().
cef493d7 7547 (dialog_proc): Remove, functionality subsumed by
ab57ceaa
RC
7548 SourcePage::OnActivate().
7549
7550 * site.h: Run indent.
7551 (SitePage): Add class declaration.
7552 * site.cc: Run indent.
7553 (SitePage): Add class implementation.
7554 (do_download_site_info_thread): New function.
7555 (context): New var. Context info for do_download_site_info_thread().
7556 (do_download_site_info): New function.
7557 (SitePage::Create, SitePage::OnInit SitePage::OnNext)
7558 (SitePage::OnBack): SitePage class implementation..
7559 (dialog_cmd): Remove IDOK, ID_BACK, and IDCANCEL handlers, now handled
7560 by SitePage members.
7561 (dialog_proc): Remove, now handled by SitePage::OnInit and base class
7562 functionality.
7563 (do_site): Remove, now handled by do_download_site_info_thread() and
7564 SitePage::OnNext functionality.
7565 (get_site_list): Remove dismiss_url_status_dialog() call.
7566
7567 * root.h (RootPage): New file, new class.
7568 * root.cc: Run indent.
7569 (dialog_cmd): Pass parent HWND parameter to note(), yesno().
7570 (dialog_proc): Remove.
7571 (do_root): Remove
7572 (dialog_cmd): Remove IDOK, ID_BACK, and IDCANCEL clauses from switch.
7573 (RootPage::OnInit): New member function. Move get_root_dir() logic to
7574 here from do_root().
7575 (RootPage::Create): New member function.
cef493d7 7576 (RootPage::OnNext): New member function. Move IDOK logic from
ab57ceaa
RC
7577 dialog_cmd() to here.
7578 (RootPage::OnBack): New member function.
7579
7580 * propsheet.h (PropSheet): New file, new class.
7581 * propsheet.cc (PropSheet): New file, new class.
7582
7583 * proppage.h (PropertyPage): New file, new class.
7584 * proppage.cc (PropertyPage): New file, new class.
7585
7586 * postinstall.cc (do_postinstall): Add owner parameter.
7587
7588 * other.cc (do_other): Add owner parameter.
7589
7590 * nio-file.cc (NetIO::Purl): Pass NULL parent param to note().
cef493d7 7591 * nio-ftp.cc (NetIO_FTP::NetIO_FTP): Pass NULL parent param to
ab57ceaa 7592 get_ftp_auth().
cef493d7 7593 * nio-http.cc (retry_get): Pass NULL parent param to get_auth(),
ab57ceaa
RC
7594 get_proxy_auth(),
7595 and get_ftp_auth().
cef493d7 7596 * nio-ie5.cc (NetIO::_url): Pass NULL parent param to note(),
ab57ceaa
RC
7597 get_auth(), get_proxy_auth().
7598
7599 * netio.h (get_auth, get_proxy_auth, get_ftp_auth): Add owner param.
cef493d7 7600 * netio.cc (auth_common, NetIO::get_auth, NetIO::get_proxy_auth,
ab57ceaa
RC
7601 NetIO::get_ftp_auth)
7602 (auth_common): Add owner param. Pass owner param to DialogBox.
cef493d7 7603 (NetIO::get_auth, NetIO::get_proxy_auth, NetIO::get_ftp_auth): Pass
ab57ceaa
RC
7604 owner param to auth_common().
7605
7606 * net.h (NetPage): New file, new class.
7607 * net.cc: Run indent.
7608 (net.h, threebar.h): Add includes.
7609 (Progress): Add extern.
7610 (dialog_cmd): Remove IDOK, IDC_BACK, and IDCANCEL cases, now handled by
7611 property sheet logic. Saved temporarily for reference.
cef493d7 7612 (NetPage::Create, NetPage::OnInit, NetPage::OnDeactivate,
ab57ceaa
RC
7613 NetPage::OnNext, NetPage::OnBack):
7614 New implementation of NetPage class members.
7615 (do_net): Remove.
7616 (dialog_proc): Remove.
7617
7618 * msg.h (fatal, note, yesno): Add owner param.
7619 * msg.c (fatal, note, yesno, mbox): Add owner param.
7620 (mbox): Remove MB_TOPMOST from MessageBox call. Unnecessary and wrong
7621 now that we have a parent.
7622
7623 * main.cc: Run indent.
cef493d7 7624 (commctrl.h, proppage.h, propsheet.h, splash.h, source.h)
ab57ceaa
RC
7625 (localdir.h, net.h, site.h, choose.h, threebar.h, desktop.h): Include
7626 headers.
7627 (root_dialog_proc): extern into this file.
7628 (Progress): Progress dialog defined here, used in several other files.
7629 (WinMain): Instantiate and create Splash, Source, Root, LocalDir, Net,
7630 Site, Chooser, Desktop pages and MainWindow sheet. Call
7631 InitCommonControls() to make sure Windows is set up for our use of
7632 property sheets. Add pages to sheet.
7633 Call MainWindow.Create() to "DoModal". Remove main loop, that logic is
7634 now handled by the PropSheet class.
7635 (root.h): Add include.
7636
7637 * log.cc (log_save): Pass NULL parent to fatal().
7638 (exit_setup): Pass NULL parent to note().
7639
7640 * localdir.h (LocalDirPage): New file, new class.
7641 * localdir.cc: Run indent.
7642 (localdir.h): New include.
7643 (threebar.h): New include.
7644 (Progress): extern into this file.
7645 (LocalDirPage::Create, LocalDirPage::OnInit, LocalDirPage::OnActivate)
cef493d7 7646 (LocalDirPage::OnNext, LocalDirPage::OnBack): Implementation of
ab57ceaa
RC
7647 LocalDirPage.
7648 (LocalDirPage::OnNext): Move log() call from do_local_dir() to here.
7649 (dialog_cmd): Remove IDOK, ID_BACK, and IDCANCEL handlers.
7650 (do_local_dir): Remove.
7651 (dialog_proc): Remove.
7652 (cwd): Remove, not used by anything.
7653
7654 * install.cc: Run indent.
7655 (process.h, threebar.h): New includes.
7656 (Progress): extern into this file.
7657 (ins_dialog, ins_action, ins_pkgname, ins_filename, ins_pprogress)
7658 (ins_iprogress, ins_diskfull, init_event): Remove, now handled by
7659 ThreeBarProgressPage.
cef493d7 7660 (dialog_cmd, dialog_proc, dialog): Removed, handled in
ab57ceaa 7661 ThreeBarProgressPage.
cef493d7
CF
7662 (init_dialog): Remove all mention of the above ins_* handles. Now
7663 handled in ThreeBarProgressPage. Altered SetWindowText()s to call
ab57ceaa
RC
7664 ThreeBarProgressPage instance Progress directly.
7665 (progress): Alter bar update logic to call ThreeBarProgressPage
7666 instance Progress directly.
7667 (uninstall_one): Alter SetWindowText()s to call ThreeBarProgressPage
7668 instance Progress directly.
cef493d7 7669 (install_one_source): Alter SetWindowText()s to call
ab57ceaa
RC
7670 ThreeBarProgressPage
7671 instance Progress directly. Pass NULL parent to note().
cef493d7 7672 (do_install_thread): Rename from do_install(), added owner param.
ab57ceaa
RC
7673 Alter SetWindowText()s to call ThreeBarProgressPage instance Progress
7674 directly.
7675 Remove dismiss_url_status_dialog() call, no longer necessary. Remove
cef493d7 7676 ShowWindow(<hide>) call, also unnecessary now. Pass owner handle to
ab57ceaa
RC
7677 fatal().
7678 (do_install_reflector): New function.
7679 (do_install): New function.
7680
7681 * ini.cc (process.h, threebar.h): New includes.
7682 (Progress): externed into this file.
7683 (find_routine): Pass NULL parent to note().
7684 (do_local_ini): Add owner param.
cef493d7 7685 (do_remote_ini): Add owner param. Pass owner to get_url_to_membuf()
ab57ceaa
RC
7686 and note(). Remove call to dismiss_url_status_dialog().
7687 (do_ini_thread): Rename from do_ini(). Add owner param. Pass owner to
cef493d7 7688 do_local_ini(), do_remote_ini(), yesno(), and note(). Set next_dialog
ab57ceaa
RC
7689 to IDD_CHOOSER on exit.
7690 (do_ini_thread_reflector): New function.
7691 (context): New var. Context for do_ini_thread.
7692 (do_ini): New function.
7693
7694 * geturl.h (get_url_to_membuf, get_url_to_string, get_url_to_file): Add
7695 owner param.
cef493d7 7696 * geturl.cc (gw_dialog, gw_url, gw_rate, gw_progress, gw_pprogress,
ab57ceaa 7697 gw_iprogress)
cef493d7 7698 (gw_progress_text, gw_pprogress_text, gw_iprogress_text, init_event):
ab57ceaa
RC
7699 Removed.
7700 (threebar.h): New include.
7701 (Progress): externed into this file.
cef493d7 7702 (dialog_cmd, dialog_proc, dialog): Removed, handled by
ab57ceaa 7703 ThreeBarProgressPage now.
cef493d7 7704 (init_dialog): Remove "if (gw_dialog == 0)" clause. Alter
ab57ceaa 7705 SetWindowText()s
cef493d7 7706 and bar setting SendMessage()s to call ThreeBarProgressPage instance
ab57ceaa
RC
7707 Progress directly. Remove "one bar only" logic, this is now handled
7708 explicitly in the ThreeBarProgressPage class.
cef493d7 7709 (progress): Altered bar and text update logic to call
ab57ceaa
RC
7710 ThreeBarProgressPage instance Progress directly. Changed kbps
7711 calculation to floating point and now print out a single decimal
7712 place.
7713 (get_url_to_membuf): Add owner param. Pass it to init_dialog.
7714 (get_url_to_string): Add owner param. Pass it to get_url_to_membuf.
cef493d7 7715 (get_url_to_file): Add owner param. Pass it to init_dialog. Alter bar
ab57ceaa
RC
7716 update logic to call ThreeBarProgressPage instance Progress directly.
7717 (dismiss_url_status_dialog): Remove.
7718
7719 * fromcwd.cc (do_fromcwd): Add owner param. Initialize found_ini to
7720 false, was true.
7721
7722 * download.cc: Run indent.
7723 (process.h, threebar.h): New includes.
7724 (Progress): externed into this file.
7725 (download_one): Add owner param. Pass it to get_url_to_file().
7726 (do_download_thread): Renamed from do_download. Add owner param. When
7727 calculating total_download_bytes, take binpicked and srcpicked into
7728 account. Remove call to dismiss_url_status_dialog(), no longer needed.
7729 Pass owner handle to download_one() and yesno().
7730 (do_download_reflector, do_download): New functions.
7731 (context): New var. Context for do_download_thread().
7732
7733 * dialog.h (D(x)): Add owner param.
7734
7735 * desktop.h (DesktopSetupPage): New file, new class.
7736 * desktop.cc: Run indent.
7737 (desktop.h): Add include.
cef493d7 7738 (dialog_proc, do_desktop): Remove, now handled in
ab57ceaa
RC
7739 DesktopSetupPage::OnInit().
7740 (dialog_cmd): Remove IDOK, IDC_BACK, and IDCANCEL cases, handled in
7741 DesktopSetupPage::OnFinish(), DesktopSetupPage::OnBack(), and PropSheet
7742 resp.
7743 (DesktopSetupPage::Create, DesktopSetupPage::OnInit)
7744 (DesktopSetupPage::OnBack, DesktopSetupPage::OnFinish): Implementation
7745 of DesktopSetupPage.
7746
7747 * cistring.h: New file, new class.
7748 * cistring.cc: New file, new class.
7749
7750 * choose.h: Run indent.
7751 (Chooser): New class declaration.
7752 * choose.cc: Run indent.
cef493d7 7753 (do_choose): Add owner param. Pass it to DialogBox() and
ab57ceaa
RC
7754 fatal().
7755 (Chooser): New class implementation.
7756
7757 * res.rc (IDS_VERSION_INFO): New string.
7758 (IDD_SOURCE, IDD_LOCAL_DIR, IDD_ROOT, IDD_SITE, IDD_OTHER_URL)
7759 (IDD_DLSTATUS, IDD_INSTATUS, IDD_SPLASH, IDD_CHOOSE, IDD_DESKTOP):
7760 Change WS_POPUP to WS_CHILD. Numerous positioning/size changes
7761 throughout.
7762 (IDD_CHOOSE): Give template the WS_EX_CONTROLPARENT style to enable
7763 TAB control navigation etc. Give the controls a reasonable tab order.
7764 Grouped radio buttons. Something's still not right, can't tab away
7765 from back/next/cancel group reliably.
7766 * resource.h (IDD_CHOOSER): New dialog ID.
7767
7768 * Makefile.in (OBJS): Add cistring.o, proppage.o, propsheet.o,
7769 threebar.o, and window.o.
7770
cc41a057
RC
77712001-12-21 Robert Collins <rbtcollins@hotmail.com>
7772
58b12a06
MB
7773 * choose.cc (listview_proc): Update the scrollbar when the headers are
7774 dragged.
cc41a057
RC
7775 (pick_pkg_line::paint): Clip columns to prevent overlap.
7776
cbfc4215
RC
77772001-12-20 Robert Collins <rbtcollins@hotmail.com>
7778
7779 * Makefile.in: Add libcomctl32.a for setup.exe.
7780 * archive.h (archive): Prevent non-child direct creation of the class.
58b12a06
MB
7781 * archive_tar.h (archive_tar): Prevent inaccurate synthetic copy and
7782 assignment.
cbfc4215
RC
7783 * choose.cc: Include commctrl for the choose header.
7784 (NEW_COL_SIZE_SLOP): Define without magic numbers.
7785 (pkgtrustp): Convert to function.
7786 (set_action): Remove.
cef493d7 7787 (add_required, fill_missing_category,default_trust): Use list syntax for
cbfc4215
RC
7788 package list.
7789 Use new set_action.
7790 (choose_caption): Remove.
7791 (topbucket::paint): New method.
7792 (topbucket::empty): Ditto.
7793 (topbucket::click): Ditto.
7794 (topbucket::~topbucket): Ditto.
7795 (paint): Remove i,ii and p as they are obsolete.
7796 Remove header drawing code.
7797 Use new chooser method to paint the chooser.
7798 Use new chooser itemcount method.
7799 (scroll_common): Rename to view::scroll.
7800 Scroll the header window separately.
58b12a06
MB
7801 (list_vscroll, list_hscroll, list_click): Update for new chooser
7802 methods.
cbfc4215
RC
7803 (listview_proc): Look for header messages.
7804 (note_width): Accept stringless calls.
7805 (pick_line::set_line): Remove.
7806 (pick_line::paint): Remove.
58b12a06
MB
7807 (pick_pkg_line::paint): Paint this one line, using the header column
7808 widths.
7809 (pick_category_line::paint): Paint this category, and anything in the
7810 bucket.
cbfc4215
RC
7811 (pick_line::click): Remove.
7812 (pick_pkg_line::click): Handle a click.
7813 (pick_category_line::click): Handle a click.
7814 (_view): Rename all to view.
7815 (view::view): Initialise the control contents.
7816 (view::set_headers): Work with the header control.
7817 (view::init_headers): Use list syntax for package list.
7818 Rearrange the width logic a little.
7819 (view::insert_pkg): Update to use the hierarchy.
7820 (view::insert_category): Ditto.
7821 (view::insert_at, view::insert_under): Remove.
7822 (view::clear_view): Update to use the hierarchy.
7823 (view::click): Update to use the hierarchy.
7824 (set_view_mode): Use list syntax for package list.
7825 Update for new chooser methods.
7826 (DoInsertItem): New helper function. (Needs a home somewhere).
58b12a06
MB
7827 (create_listview): Remove choose control code and use the constructor
7828 instead.
cbfc4215
RC
7829 (dialog_cmd,scan2,do_choose): Use list syntax for package list.
7830 * choose.h: Include newly required headers list and package_meta.
7831 (_voew): Rename to view.
7832 (pick_line): Convert to an ABC.
7833 (pick_pkg_line): New class.
7834 (pick_catgory_line): New class.
7835 (topbucket): New class.
7836 (view::scroll): New method created from listview_scroll function.
7837 * desktop.cc (make_passwd_group): Use list syntax for package list.
7838 * download.cc (do_download): Use list syntax for package list.
7839 * fromcwd.cc (found_file): Use list syntax for package list.
7840 * iniparse.y (pacakges): Use list syntax for package list.
7841 * install.cc (uninstall_one): Use list syntax for package list.
7842 (do_install): Use list syntax for package list.
58b12a06
MB
7843 * io_stream.h (io_stream): Prevent non-child direct creation of the
7844 class.
cbfc4215
RC
7845 Prevent inaccurate synthetic copy and assignment.
7846 * list.h: Include required header stdlib.
7847 Work on const correctness.
7848 * package_db.cc (packagedb::getpackagebyname): Remove.
7849 (packagedb::packagedb): Remove custom list code, and make db a local.
7850 (packagedb::getfirstpackage): Remove.
7851 (packagedb::getnextpackage): Remove.
7852 (packagedb::addpackage): Remove.
7853 (flush): Remove custom list code.
7854 (packagedb::registerpackage): Remove.
7855 (packagedb::packages): New static member.
7856 (packagedb::task): New static member.
7857 * package_db.h (PackageDBActions): New enum.
7858 (packagedb): Remove getfirstpackage, getnextpackage, getpackagebyname,
7859 addpackage, registerpackage, packages, packagecount, curr_package, db.
7860 Add packages, task.
7861 * pacakge_meta.cc: Include package_db.h.
7862 (packagemeta::action_caption): New method.
7863 (packagemeta::set_action): New method.
7864 * package_meta.h (CategoryPackage): Initialise key.
7865 (packagemeta): Initialise key.
7866 Add set_action and action_caption methods.
7867 Prevent inaccurate synthetic copy and assignment.
7868 * resource.h (IDC_CHOOSE_LISTHEADER): New ID.
7869 * source.cc: Include package_db for db manipulation.
7870 (save_dialog): Set the db task.
58b12a06
MB
7871 * win32.h: Tell the w32 include headers what IE version to
7872 expect/require.
cbfc4215 7873
cd8e5750
RC
78742001-12-06 Robert Collins <rbtcollins@hotmail.com>
7875
7876 * README: Wishlist updates.
7877
5519d243
RC
78782001-12-04 Robert Collins <rbtcollins@hotmail.com>
7879
7880 * package_db.cc (getnextpackage): Don't overrun the array.
7881
de6a1a64
RC
78822001-12-04 Robert Collins <rbtcollins@hotmail.com>
7883
7884 * Makefile.in (OBJS): Add setup_version.o.
7885 (version.c): Rename to setup_version.
7886 * choose.cc (set_action): Prevent NULL pointer dereference.
7887 (package_sort): Remove.
7888 * fromcwd.cc (canonicalize_version): Moved to version.cc.
58b12a06
MB
7889 (check_ini): New function for use with find to see if there is a cached
7890 setup.ini.
de6a1a64
RC
7891 (do_fromcwd): Check for a cached setup.ini from any mirror site.
7892 * ini.cc (find_routine): New function, for finding cached setup.ini's.
7893 (do_local_ini): New function, drives parsing of local ini's.
58b12a06
MB
7894 (do_remote_ini): New function, drives parsing and caching of remote
7895 ini's.
de6a1a64
RC
7896 (do_ini): Move guts to do_remote_ini and do_local_ini.
7897 * list.h (removebyindex): New method.
7898 * other.cc (save_dialog): Use new site_list and all_site_list to add the
7899 new site to the site picklist.
7900 (dialog_cmd): Only save the dialog when exiting the dialog.
7901 * res.rc (IDD_SITE): Make IDC_URL_LIST a multiple-selection control.
7902 * site.cc (site_list_type): Move to site.h
7903 (site_list): New global, sites chosen by the user.
7904 (all_site_list): New global, all potential sites.
58b12a06
MB
7905 (site_list_type::init): New method, parses a mirror.lst URL string into
7906 a site_list_type object.
de6a1a64
RC
7907 (site_list_type::site_list_type): New method.
7908 (check_if_enable_next): Examine the control, not a local variable.
7909 (load_dialog): Select all the user chosen sites by default.
cef493d7 7910 (save_dialog): Adjust for multiple selection semantics.
de6a1a64 7911 (save_site_url): Save all user chosen sites.
58b12a06
MB
7912 (dialog_cmd): Don't save the dialog when the listbox recieves a message
7913 - thats not needed.
de6a1a64
RC
7914 Remove obsolete other_url reference.
7915 (dialog_proc): Use all_site_list instead of site_list.
7916 (site_sort): Remove.
7917 (get_site_list): Remove malloc use - use list template instead.
7918 Move site_list_type initialisation to site_list_type::init().
7919 (get_initial_list_idx): Renamed to ...
7920 (get_saved_sites): this. Also read in multiple sites to the site_list.
7921 (do_site): Use all_site_list not site_list.
7922 Log all chosen sites.
7923 * site.h: New file, defines site related class, functions and variables.
7924 * state.h: Add comment about use of state.h
7925 (mirror_site): Remove.
7926 (other_url): Remove.
7927 (MIRROR_SITE): Remove.
7928 * version.cc: New file, for version-handling and related functions.
7929
341988b9
RC
79302001-12-02 Robert Collins <rbtcollins@hotmail.com>
7931
7932 * Makefile.in: Add filemanip.o to setup.
7933 * archive.cc (archive::extract_file): Use new io_stream method 'copy'.
7934 * archive_tar.h (archive_tar_file): Implement get_size virtual.
7935 (archive_tar): Ditto.
58b12a06
MB
7936 * choose.cc (set_action): Use [] operator instead of getnth - its more
7937 readable.
341988b9
RC
7938 (paint): Ditto.
7939 (_view::init_headers): Ditto.
7940 (_view::insert_pkg): Ditto.
7941 (set_view_mode): Ditto.
7942 (scan2): Ditto.
7943 (do_choose): Ditto.
7944 (base): Moved to filemanip.cc.
7945 (find_tar_ext): Ditto.
7946 (parse_filename): Ditto.
7947 (_Info::_Info): Remove.
7948 * compress_bz.h (compress_bz): Implement get_size virtual.
7949 * compress_gz.h (compress_gz): Implement get_size virtual.
58b12a06
MB
7950 * cygpackage.cc (cygpackage::destroy): Use array delete for char *
7951 objects.
341988b9 7952 * download.cc (get_file_size): Move to filemanip.cc.
58b12a06
MB
7953 (check_for_cached): Use [] operator instead of getnth - its more
7954 readable.
341988b9
RC
7955 (download_one): Ditto.
7956 * filemanip.cc: New file.
58b12a06
MB
7957 * geturl.cc (init_dialog): Make url a pointer to const as it is not
7958 modified.
7959 (get_url_to_membuf): New function - contains get_url_to_string worker
7960 code.
341988b9
RC
7961 (get_url_to_string): Becomes a trivial wrapper to get_url_to_membuf.
7962 * geturl.h: Declare new prototype.
7963 * ini.cc (do_ini): Use get_url_to_membuf and pass ini_init an io_stream.
7964 Tidy up the error code a little.
7965 * ini.h: Remove __cplusplus protection for ini_init.
7966 (_Info): Remove.
7967 * inilex.l: Remove old globals.
7968 (ini_init): Use an io_stream for getting the characters.
7969 (ini_getchar): Ditto.
7970 * iniparse.y: Declare yylex as a C++ function.
58b12a06
MB
7971 (add_correct_version): Use [] operator instead of getnth - its more
7972 readable.
341988b9
RC
7973 * io_stream.cc (io_stream::move_copy): Use the copy method.
7974 (io_stream::copy): New method to simply copy from one stream to another.
58b12a06
MB
7975 * io_stream.h (io_stream): New static method copy, and virtual method
7976 get_size.
341988b9
RC
7977 * io_stream_cygfile.cc (io_stream_cygfile::get_size): Implement this.
7978 * io_stream_cygfile.h (io_stream_cygfile::get_size): Declare this.
7979 * io_stream_file.cc (io_stream_file::get_size): Implement this.
7980 * io_stream_file.h (io_stream_file::get_size): Declare this.
7981 * io_stream_memory.h: Include errno as it's neded to parse the header.
7982 (io_stream_memory::get_size): Implement this.
7983 (io_stream_memory::st_size): Delete this.
7984 * list.h: Change getnth into the [] operator.
58b12a06
MB
7985 * netio.cc (NetIO::NetIO): Change prototype to reflect Purl not being
7986 modified.
341988b9
RC
7987 (NetIO::set_url): Ditto.
7988 (NetIO::open): Ditto.
7989 * netio.h: As for netio.cc.
58b12a06
MB
7990 * nio-file.cc (NetIO_File::NetIO_File): Change prototype to reflect
7991 Purl not being modified.
341988b9
RC
7992 * nio-file.h: Ditto.
7993 * nio-ftp.cc (NetIO_FTP::NetIO_FTP): Ditto.
7994 * nio-ftp.h (NetIO_FTP::NetIO_FTP): Ditto.
7995 * nio-http.cc (NetIO_HTTP::NetIO_HTTP): Ditto.
7996 * nio-http.h (NetIO_HTTP::NetIO_HTTP): Ditto.
7997 * nio-i5.cc (NetIO_IE5::NetIO_IE5): Ditto.
7998 * nio-i5.h (NetIO_IE5::NetIO_IE5): Ditto.
7999 * package_meta.cc (packagemeta::~packagemeta): Bugfix: use array delete.
8000 * package_source.cc (packagesource::set_canonical): Ditto.
8001 (packagesource::set_cached): Ditto.
8002 * package_source.h (site::~site): Ditto.
58b12a06
MB
8003 * site.cc: Change site_list_type to a class, and search and replace
8004 sort_key to key globally.
341988b9 8005
071c1c54
RC
80062001-12-01 Robert Collins <rbtcollins@hotmail.com>
8007
58b12a06
MB
8008 * package_source.cc (packagesource::set_canonical): Filename was out by
8009 one.
071c1c54 8010
4fe323f9
RC
80112001-11-30 Robert Collins <rbtcollins@hotmail.com>
8012
8013 * Makefile.in (OBJS): Remove category_list - it's not needed.
8014 * README: More wishlist updates.
8015 * category.cc (Category::Category): Initialise new members.
8016 (Categorycmp): New function.
8017 * category.h (Category): New member key for template use.
8018 * category_list.cc: Remove.
8019 * category_list.h: Remove.
8020 (Categorycmp): New function prototype.
8021 * choose.cc: Remove category_list - not needed.
cef493d7 8022 (set_action): Only show the 'source' option when the source is actually
4fe323f9
RC
8023 available.
8024 (add_required): Fix recursion limiter to 5.
8025 (fill_missing_category): Use list access.
8026 (default_trust): Ditto.
8027 (pick_line::paint): Ditto.
8028 (_view::init_headers): Ditto.
8029 (_view::insert_pkg): Ditto.
8030 (_view::insert_category): Ditto.
8031 (_view::click): Ditto.
8032 (set_view_mode): Ditto.
8033 (do_choose): Ditto.
8034 * cygpackage.h: Remove category_list - not needed.
8035 * geturl.cc (get_url_to_string): Fix null byte insertion.
8036 * inipatse.y: Remove category_list - not needed.
8037 (categories): Use list access.
8038 * package_db.cc: Ditto.
8039 * package_db.h: Remove category_list - not needed.
8040 (packagedb): Use the list template for categories.
8041 * package_meta.cc (add_category): Ditto.
8042 * package_meta.h (CategoryPackage): Link to the category as well.
cef493d7 8043 (packagemeta): Use a list of CategoryPackages instead of Categories
4fe323f9
RC
8044 for more memory efficient cross-referencing.
8045
7d66d192
RC
80462001-11-30 Robert Collins <rbtcollins@hotmail.com>
8047
58b12a06
MB
8048 * package_db.cc (packagedb::flush): Write a canonical version for all
8049 packages irrespective of the media they were installed from.
7d66d192 8050
bb849dbd
RC
80512001-11-29 Robert Collins <rbtcollins@hotmail.com>
8052
8053 * Makefile.in (OBJS): Add package_source and rfc1738.
8054 * README: Wishlist update.
8055 * category_list.cc (register_category): Use references.
8056 * category_list.h (CategoryList): Ditto.
8057 * choose.cc (isinstalled): Remove.
8058 (pkgtrustp): New macro.
8059 (set_action): Use packagemeta.
8060 (add_required): Ditto.
58b12a06
MB
8061 (choose_caption): Example package to choose caption, rather than state
8062 flags.
bb849dbd
RC
8063 (check_existence): Remove.
8064 (set_existence): Remove old code.
8065 (fill_missing_category): Use packagemeta.
8066 (keep_or_skip): Remove.
8067 (default_trust): Use packagemeta and set trust values directly.
8068 (pick_line::set_line): Use packagemeta.
8069 (_view::insert_pkg): Ditto.
8070 (_view::insert_category): Ditto.
8071 (_view::click): Ditto.
8072 (set_view_mode): Ditto. Also remove "exclude" code.
8073 (create_listview): Use packagemeta.
8074 (dialog_cmd): Ditto.
8075 (getpkgbyname): Remove
8076 (scan2): Use packagemeta. Temporarily comment out the holefinding code.
8077 (read_installed_db): Remove.
8078 (package_sort): Use packagemeta.
58b12a06
MB
8079 (do_choose): Use packagemeta. Don't sort the packages - the db does
8080 that.
bb849dbd
RC
8081 * choose.h: Use packagemeta.
8082 * cygpackage.cc (cygpackage::cygpackage): Initialise all variables.
8083 (cygpackage::cygpackage): Ditto.
8084 (cygpackage::set_canonical_version): Copy the passed string.
8085 (cygpackage::~cygpackage): Move cleanup code to destroy().
8086 (cygpackage::destroy): New function.
8087 (cygpackage::getfirstfile): Use a separate buffer.
8088 (cygpackage::getnextfile): Ditto.
8089 (cygpackage::Canonical_version): New function.
8090 (cygpackage::set_sdesc): Ditto.
8091 (cygpackage::set_ldesc): Ditto.
8092 * cygpackage.h (cygpackage::Canonical_version): New method.
8093 (cygpackage::set_sdesc): New method.
8094 (cygpackage::set_ldesc): New method.
8095 (cygpackage::SDesc): New method.
8096 (cygpackage::LDesc): New method.
8097 (cygpackage::set_canonical_version): New method.
8098 * desktop.cc: Include packagedb headers.
8099 (make_password_group): Use packagemeta.
8100 * download.cc: Include packagedb headers.
58b12a06
MB
8101 (check_for_cached): New method to find any cached file and fill out the
8102 database info.
bb849dbd
RC
8103 (download_one): Take a packagesource, support multiple mirrors.
8104 (do_download): Use packagemeta.
8105 * from cwd.cc: Include packagedb headers.
8106 (found_file): Use packagemeta.
8107 * ini.cc (do_ini): Beginning of multiple-mirror support.
8108 * ini.h (CategoryPackage): Remove.
8109 (Dependency): Remove.
8110 (Package): Remove.
58b12a06
MB
8111 (new_package,getpkgbyname,getpackagecategorybyname,add_category):
8112 Remove.
bb849dbd
RC
8113 * inilex.l: Support multiple mirrors.
8114 * iniparse.y: Include packagedb headers.
8115 (parser): Use packagemeta.
8116 (new_package): Remove.
8117 (add_correct_version): New function.
8118 (new_requirement): Remove.
8119 (add_category): Remove.
8120 * install.cc (uninstall_one): Use packagemeta.
8121 (install_one_source): New function.
8122 (install_one): Use packagemeta.
8123 (do_install): Use packagemeta.
8124 * io_stream.cc (io_stream::move): Bugfix on move/copy case.
58b12a06
MB
8125 * io_stream_cygfile.cc (io-stream_cygfile::set_mtime): Do not reopen the
8126 file after setting the mtime, it makes no sense, and results in 0 length
8127 files.
bb849dbd
RC
8128 * io_stream_file.cc (io-stream_file::set_mtime): Ditto.
8129 * list.h: New file, template class for a form of list.
8130 * package_db.cc (packagedb::registerpackage): New function.
8131 * package_db.h (packagedb::npackages ()): New method.
8132 * package_meta.cc (packagemeta::add_version): Use list template.
8133 (packagemeta::set_installed): Ditto.
8134 (packagemeta::add_category): New method.
8135 * package_meta.h: Include necessary headers to parse the class.
8136 (CategoryPackage): New class.
8137 (packagemeta): Initialise all members.
8138 (packagemeta::SDesc): New method.
8139 (packagemeta::Categories): New method.
8140 (packagemeta::add_category): Ditto.
8141 (packagemeta::versions): Change to be a list instance.
8142 * package_source.cc (packagesource::set_canonical): New method.
8143 (packagesource::set_cached): New method.
8144 * package_source.h: Include necessary headers to parse the class.
8145 (site): New class.
8146 (packagesource::packagesource): Initialize all members.
8147 (packagesource): Make this class non-abstract.
8148 * package_version.cc (packageversion::packageversion): New method.
8149 * package_version.h (Dependency): New class.
8150 (packageversion::Canonical_vesion): New method.
8151 (packageversion::SDesc): New method.
8152 (packageversion::LDesc): New method.
8153 (packageversion::new_requirement): Ditto.
8154 (packageversion::srcpicked, binpicked): What to install.
8155 (packageversion::src, bin): Installation source data.
8156 * rfc1738.cc: New file. Escapes special characters in URL's.
8157 * rfc1738.h: Ditto.
8158
90d14922
RC
81592001-11-26 Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>
8160
8161 * nio-http.cc (NetIO_HTTP::NetIO_HTTP): Stop header parsing when
8162 SimpleSocket::gets() returns a zero-length string, so that we
8163 don't end up eating the entire stream thinking it's all header info.
8164
7c7034e8
RC
81652001-11-23 Robert Collins <rbtcollins@hotmail.com>
8166
8167 * install.cc (badrename): Remove.
58b12a06
MB
8168 (do_install): Use packagedb flush method to write
8169 /etc/setup/installed.db.
7c7034e8
RC
8170 * io_stream.cc (io_stream::move_copy): New method.
8171 (io_stream::move): New method.
8172 * io_stream.h (io_stream): New methods move and move_copy.
8173 * io_stream_cygfile.cc (io_stream_cygfile::move): New method.
8174 * io_stream_cygfile.h (io_stream_cygfile): New method move.
8175 * io_stream_file.cc (io_stream_file::move): New method.
8176 * io_stream_file.h (io_stream_file): New method move.
8177 * package_db.cc (packagedb::flush): New method.
8178 * package_db.h (packagedb): New method flush.
8179
fa0c0d10
RC
81802001-11-23 Robert Collins <rbtcollins@hotmail.com>
8181
8182 * Makefile.in (OBJS): Add package_version.
8183 * ategory.cc (Category::Category): Update constructors.
8184 * category_list.cc (CategoryList::register_category): Insert correctly.
8185 * choose.cc: Include package_version.h, not package.h.
8186 * cygpackage.cc: Ditto.
8187 (cygpackage::uninstall): New method.
8188 * cygpackage.h (cygpackage): Rename genericpackage to packageversion.
8189 New method uninstall.
8190 * hash.cc (add, has, enumerate): Change prototype to be accurate.
8191 * hash.h (hash): Change prototypes to be accurate.
8192 * ini.h (_Info): New parameterless constructor.
8193 (CategoryPackage): New constructor.
8194 (Package): Ditto.
8195 * install.cc: Don't include unneeded headers.
8196 Include package database headers.
8197 (hash::add_subdirs): Remove.
58b12a06
MB
8198 (uninstall_one): Use packagemeta->uninstall to perform the
8199 uninstallation. Don't uninstall source packages.
8200 (do_install): Just can uninstall_one once as we ignore source packages
8201 now. Don't copy the installed.old database accross, instead iterate
8202 through the packagedb packages list and write the installed packages
8203 out.
fa0c0d10
RC
8204 * package_db.cc: Include package_version.h, not package.h.
8205 (packagedb::packagedb): Never let db be undefined.
8206 Record the installation filename, so we can reconstruct installed.db.
8207 (packagedb::addpackage): Insert packages in alpha sorted order.
8208 (packagedb::categories): Initialise correctly.
8209 * package_meta.cc: Include win32 and mount headers as a workaround to
8210 current io_stream limitations. Include a TODO about that.
8211 (standard_dirs): New, from install.cc.
8212 (hash::add_subdirs): New, from install.cc.
8213 (packagemeta::set_installed): Rename genericpackage to packageversion.
8214 (packagemeta::uninstall): New method.
8215 * package_meta.h: Rename genericpackage to packageversion.
8216 (packagemeta): Update constructor.
8217 (add_version, set_installed): Rename genericpackage to packageversion.
8218 (uninstall): New method.
8219 (installed_from): New member.
8220 * package_source.cc: New file.
8221 * package_source.h: New file.
8222 * package_version.cc: New file.
8223 * package_version.h: New file.
8224 * package.cc: Removed.
8225 * package.h: Removed.
cef493d7 8226
7b606ae5
RC
82272001-11-21 Robert Collins <rbtcollins@hotmail.com>
8228
8229 * Makefile.in (OBJS): Add category.o and category_list.o.
8230 * category.h: New file.
8231 * category.cc: New file.
8232 * category_list.h: New file.
8233 * category_list.cc: New file.
8234 * choose.cc: Include category headers.
8235 (fill_missing_category): Use package_db to access global categories.
8236 (_view::insert_pkg): Ditto.
8237 (_view::insert_category): Ditto.
8238 (set_view_mode): Ditto.
8239 (getcategorybyname): Remove.
8240 * cygpackage.h: Include category_list.h to parse this correctly.
8241 (cygpackage): New virtual &Categories.
8242 * ini.h (_CategoryPackage): More C to C++ conversion.
8243 (Category): Remove.
8244 (getcategorybyname): Remove.
8245 (register_category): Remove.
8246 * iniparse.y: Include package db and category headers.
8247 (categories): Use package_db to access global categories.
8248 (category): Remove.
8249 (ncategories): Remove.
8250 (register_category): Remove.
8251 * package.h: New virtual &Categories.
58b12a06
MB
8252 * package_db.cc (packagedb::packagedb): Don't read the installed db
8253 twice.
7b606ae5 8254 (packagedb::categories): Declare.
58b12a06
MB
8255 * package_db.h (packagedb): New member categories for global categories
8256 list.
7b606ae5 8257
d0fa1c4e
RC
82582001-11-21 Robert Collins <rbtcollins@hotmail.com>
8259
8260 * choose.h: Don't include ini.h
8261 * ini.h: Allow pure c++ in the header file.
8262
24cbae7f
RC
82632001-11-21 Robert Collins <rbtcollins@hotmail.com>
8264
8265 * install.cc (do_install): Write a version 2 installed.db file.
58b12a06
MB
8266 * package_db.cc (packagedb::packagedb): Read version 1 and 2
8267 installed.db files.
24cbae7f 8268
7939f6d1
RC
82692001-11-21 Robert Collins <rbtcollins@hotmail.com>
8270
8271 * Makefile.in (OBJS): Add package abstraction objects.
8272 * choose.cc: Include package abstraction headers.
8273 (read_installed_db): Use packagedb class and ignore installed sources.
8274 * cygpackage.cc: New file.
8275 * cygpackage.h: New file.
8276 * filemanip.h (get_file_size): Use unixy types.
8277 * package.h: New file.
8278 * package.cc: New file.
8279 * package_db.cc: New file.
8280 * package_db.h: New file.
8281 * package_meta.cc: New file.
8282 * package_meta.h: New file.
8283
33bc0053
RC
82842001-11-21 Robert Collins <rbtcollins@hotmail.com>
8285
8286 * REAME: Updates to wishlist.
8287
12ccadc0
RC
82882001-11-16 Robert Collins <rbtcollins@hotmail.com>
8289
8290 * README: Updated and added my list of wishlist and todo items.
8291
ca9506cc
RC
82922001-11-14 Robert Collins <rbtcollins@hotmail.com>
8293
8294 * Makefile.in (OBJS): Include io_stream_memory in setup.exe.
8295 * archive_tar.cc (archive_tar::write): New prototype.
8296 (archive_tar::seek): New method.
8297 * archive.h (archive_tar_file): Update write() and add seek().
8298 (archive_tar): Ditto.
8299 * archive_tar_file.cc (archive_tar_file::write): New prototype.
8300 (archive_tar_file::seek): New method.
8301 * compress_bz.cc (compress_bz::write): New prototype.
8302 (compress_bz::seek): New function.
8303 * compress_bz.h (compress_bz): Update write() and add seek().
8304 * compress_gz.cc (compress_gz::write): New prototype.
8305 (compress_gz::seek): New function.
8306 * compress_gz.h (compress_gz): Update write() and add seek().
8307 * geturl.cc: Include io_stream headers.
8308 (GUBuf): Remove.
8309 (get_url_to_string): Use a io_stream_memory buffer instead of GUBuf.
8310 * io_stream.h (io_stream_seek_t): New enum.
8311 (io_stream): Update write() and add seek().
8312 * io_stream_cygfile.cc (io_stream_cygfile::write): New prototype.
8313 (io_stream_cygfile::seek): New function.
58b12a06
MB
8314 * io_stream_cygfile.h (io_stream_cygfile): Update write() and add
8315 seek().
ca9506cc
RC
8316 * io_stream_file.cc (io_stream_file::write): New prototype.
8317 (io_stream_file::seek): New function.
8318 * io_stream_file.h (io_stream_file): Update write() and add seek().
8319
2db33f10
RC
83202001-11-13 Brian Keener <bkeener@thesoftwaresource.com>
8321
8322 * localdir.cc: Add headers unistd.h and port.h.
cef493d7 8323 (save_local_dir): Expand search logic to include local directory for
2db33f10
RC
8324 location of file last-cache.
8325 (dialog_cmd): Skip IDD_ROOT when downloading and use Back button.
cef493d7 8326 (do_local_dir): Expand search logic to include local directory for file
2db33f10
RC
8327 last-cache.
8328 * res.rc (IDD_CHOOSE_DIALOG): Add hotkey to View button.
cef493d7 8329 * Source.cc (dialog_cmd): Skip IDD_ROOT if select Download from
2db33f10 8330 Internet.
cef493d7 8331 (do_source): Default to Install from Internet on first entry or
2db33f10
RC
8332 previous selection if backing up from IDD_ROOT or IDD_LOCAL_DIR.
8333
03a6c5b1
RC
83342001-11-13 Robert Collins <rbtcollins@hotmail.com>
8335
8336 * choose.cc (find_tar_ext): Only match at the end of the string.
8337 (getpkgbyname): Prevent NULL pointer dereference.
8338
b24c88b3
RC
83392001-11-13 Robert Collins <rbtcollins@hotmail.com>
8340
8341 * Makefile.in (CFLAGS): Add warnings and -Werr.
58b12a06
MB
8342 (WARNONLY_FLAGS): For sources that produce (harmless) errors no matter
8343 what.
b24c88b3
RC
8344 (OBJS): Add io_stream class' objects.
8345 (autoload.o): Use WARNONLY_FLAGS.
8346 (inilex.o): Ditto.
8347 (iniparse.o): Ditto.
8348 * archive.cc: New file.
8349 * archive.h: New file.
8350 * archive_tar.cc: New file.
8351 * archive_tar.h: New file.
8352 * archive_tar_file.cc: New file.
8353 * autoload.c: Fix compiler warnings (unused, deprecated conversion).
8354 * choose.cc: Use io_stream.h, not mount.h.
8355 Run indent.
58b12a06
MB
8356 (find_tar_ext): Rewritten to use strstr, and to accept .tar as an
8357 extension.
b24c88b3
RC
8358 (read_installed_db): Use io_streams.
8359 * choose.h: Run indent.
8360 * compress.cc: New file.
8361 * compress.h: New file.
8362 * compress_bz.cc: New file.
8363 * compress_bz.h: New file.
8364 * compress_gz.cc: New file.
8365 * compress_gz.h: New file.
8366 * concat.cc: Run indent.
8367 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8368 * concat.h: Run indent.
8369 * desktop.cc: Run indent.
8370 Include mklink2.h rather than redefining by hand.
8371 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8372 (etc_profile): Fix compiler warning (deprecated conversion).
8373 (make_link): Fix compiler warning (deprecated conversion).
8374 Tidy up use of args variable - consolidate into argbuf.
8375 (start_menu): Fix compiler warning (deprecated conversion).
8376 (desktop_icon): Fix compiler warning (deprecated conversion).
8377 (make_etc_profile): Fix compiler warning (deprecated conversion).
8378 (uexists): Fix compiler warning (deprecated conversion).
8379 (check_desktop): Fix compiler warning (deprecated conversion).
8380 (check_startmenu): Fix compiler warning (deprecated conversion).
8381 * dialog.cc: Run indent.
8382 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8383 (fatal): Fix compiler warning (deprecated conversion).
8384 * dialog.h: Run indent.
8385 * diskfull.cc: Run indent.
8386 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8387 * download.cc: Run indent.
8388 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8389 (download_one): Fix compiler warning (signed vs unsigned comparison).
8390 * filemanip.h: Run indent.
8391 * find.cc: Run indent.
8392 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8393 (find): Fix compiler warning (deprecated conversion).
8394 * find.h: Run indent.
8395 * fromcwd.cc: Run indent.
8396 * geturl.cc: Run indent.
8397 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8398 (dialog_cmd): Return a value.
8399 (dialog_proc): Remove unused variables.
8400 Return a value.
8401 (get_url_to_file): Fix compiler warning (deprecated conversion).
8402 * geturl.h: Run indent.
8403 * hash.cc: Run indent.
8404 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8405 * hash.h: Run indent.
8406 * ini.cc: Run indent.
8407 Use io_streams.
8408 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8409 (do_ini): Use io_streams for local io.
8410 * ini.h: Run indent.
8411 * inilex.l (ignore_line): Fix compiler warning (is not a prototype).
8412 Fix compiler warning (brackets for truth assignment).
8413 * install.cc: Run indent.
8414 Fix compiler warning (/* in comment).
8415 Use io_streams.
8416 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8417 (dialog_cmd): Return a value.
8418 (dialog_proc): Return a value.
8419 (start_tics): Deleted - was unused.
8420 (badrename): Fix compiler warnings (unused, deprecated conversion).
8421 (standard_dirs): Fix compiler warning (deprecated conversion).
8422 (exists): Remove.
8423 (uninstall_one): Convert to io_streams.
8424 (install_one): Convert to io_streams.
8425 (do_install): Convert to io_streans.
8426 Fix compiler warning (deprecated conversion).
8427 * io_stream.cc: New file.
8428 * io_stream.h: New file.
8429 * io_stream_cygfile.cc: New file.
8430 * io_stream_cygfile.h: New file.
8431 * io_stream_file.cc: New file.
8432 * io_stream_file.h: New file.
8433 * localdir.cc: Run indent.
8434 Use io_streams.
8435 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8436 (get_root_dir_now): Remove.
8437 (save_local_dir): Convert to io_streams.
8438 (dialog_cmd): Return a value.
8439 (do_local_dir): Convert to io_streams.
8440 (log.cc): Run indent.
8441 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8442 (log): Fix compiler warning (deprecated conversion).
8443 (log_save): Fix compiler warning (deprecated conversion).
8444 * log.h: Run indent.
8445 (log): Fix compiler warning (deprecated conversion).
8446 (log_save): Fix compiler warning (deprecated conversion).
8447 * main.cc: Run indent.
8448 Don't include "netio.h".
8449 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8450 (netio_test): Remove.
8451 (sid_auth): Fix compiler warning (partially bracketed initialiser).
8452 (WinMain): Return a value.
8453 * mkdir.cc: Run indent.
8454 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8455 * mklink2.c: Run indent.
8456 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8457 (mkcygsymlink): New function.
8458 * mklink2.h: New file.
8459 * mount.cc: Run indent.
8460 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8461 (create_mount): Remove unused variables.
8462 (cygpath): Fix compiler warning (signed vs unsigned comparison).
8463 * mount.h: Run indent.
8464 * msg.cc: Run indent.
8465 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8466 (msg): Fix compiler warning (deprecated conversion).
8467 (mbox): Fix compiler warning (deprecated conversion).
8468 * msg.h: Run indent.
8469 (msg): Fix compiler warning (deprecated conversion).
8470 * net.cc: Run indent.
8471 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8472 (dialog_cmd): Return a value.
8473 * netio.cc: Run indent.
8474 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8475 (auth_cmd): Return a value.
8476 * netio.h: Run indent.
8477 * nio-file.cc: Run indent.
8478 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8479 (NetIO_File::NetIO_File): Fix compiler warning (deprecated conversion).
8480 * nio-file.h: Run indent.
8481 * nio-ftp.cc: Run indent.
8482 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8483 * nio-ftp.h: Run indent.
8484 * nio-http.cc: Run indent.
8485 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8486 * nio-http.h: Run indent.
8487 * nio-ie5.cc: Run indent.
8488 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8489 * nio-ie5.h: Run indent.
8490 * other.cc: Run indent.
8491 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8492 (dialog_cmd): Return a value.
8493 * port.h: Run indent.
8494 * postinstall.cc: Run indent.
8495 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8496 (cmd): Fix compiler warning (deprecated conversion).
8497 (eun): Fix compiler warning (deprecated conversion).
8498 * root.cc: Run indent.
8499 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8500 * simpsock.cc: Run indent.
8501 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8502 * simpsock.h: Run indent.
8503 * site.cc: Run indent.
8504 Use io_streams.
8505 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8506 (get_root_dir_now): Remove.
8507 (save_site_url): Convert to io_streams.
8508 (dialog_cmd): Return 0.
8509 (get_initial_list_idx): Convert to io_streans.
8510 * source.cc: Run indent.
8511 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8512 (check_if_enable_next): Remove.
8513 (load_dialog): Remove unused variables.
8514 (save_dialog): Ditto.
8515 (dialog_cmd): Return a value.
8516 * splash.cc: Return a value.
8517 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8518 (dialog_cmd): Return a value.
8519 * state.cc: Run indent.
8520 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8521 * state.h: Run indent.
8522 * tar.h: Remove.
8523 * tar.cc: Remove.
8524
398dd7b2
CF
85252001-11-12 Christopher Faylor <cgf@redhat.com>
8526
8527 * desktop.cc (start_menu): Change start menu name to "Cygwin".
8528 (check_startmenu): Ditto.
8529
c29ee141
CF
85302001-11-11 Christopher Faylor <cgf@redhat.com>
8531
8532 * choose.cc (parse_filename): Finish reorganization by correctly
8533 decrementing p in memmove.
8534
3a8276de
CF
85352001-11-11 Christopher Faylor <cgf@redhat.com>
8536
8537 * choose.cc (parse_filename): Reorganize code to work around gcc
8538 optimization problem.
8539
6eea52fb
RC
85402001-11-09 Gareth Pearce <tilps@hotmail.com>
8541
8542 * choose.cc (set_action): Allow skip as an option for installed
8543 packages that have version number not listed in setup.ini.
8544
cf99b153
RC
85452001-11-10 Robert Collins <rbtcollins@hotmail.com>
8546
8547 * choose.cc (set_cation): Backout last change.
8548 (choose_caption): Ditto.
8549
55e204f6
RC
85502001-11-10 Robert Collins <rbtcollins@hotmail.com>
8551
8552 * ini.h (actions): Remove - transferred to choose.h.
8553 (views): Ditto.
8554 * choose.h: Protect class's from "C" compilers.
8555 (actions): New enum, from ini.h. This may not be the 'right' place
8556 but that place doesn't exist yet.
8557 (_views): New enum, from ini.h.
58b12a06
MB
8558 * choose.cc (set_action): Handle installed packages with a version not
8559 in setup.ini.
55e204f6
RC
8560 (choose_caption): Ditto.
8561 * iniparse.y: Rearrange header order to handle new ini.h.
8562
85632001-11-10 Robert Collins <rbtcollins@hotmail.com>
8564
8565 * ini.h (_Info): Fix compiler warnings (signed vs unsigned comparison).
8566 (registry_category): Fix compiler warning (deprecated conversion).
8567 * iniparse.y (registry_category): Ditto.
58b12a06
MB
8568 * choose.cc (cvsid): Fix compiler warnings (unused, deprecated
8569 conversion).
55e204f6
RC
8570 (add_requried): Remove unused variable.
8571 (choose_caption): Handle all enumeration values via a default.
8572 (paint): Fix compiler warnings (unused, deprecated conversion).
58b12a06
MB
8573 (scroll_common): Fix compiler warnings (unused, signed vs unsigned
8574 comparison).
55e204f6
RC
8575 (list_clicK): Fix compiler warnings (signed vs unsigned comparison).
8576 (note_width): Fix compiler warnings (deprecated conversion).
8577 (keep_or_skip): Fix compiler warnings (unused).
8578 (_view::mode_caption): Fix compiler warnings (deprecated conversion).
8579 (set_view_mode): Fix compiler warnings (unused).
58b12a06
MB
8580 (create_listview): Fix compiler warnings (unused, incorrect format,
8581 reaches end of function).
55e204f6 8582 (dialog_proc): Fix compiler warnings (unused).
58b12a06
MB
8583 (read_installed_db): Fix compiler warnings (unused, deprecated
8584 conversion).
55e204f6
RC
8585 * choose.h (_header): Fix compiler warnings (deprecated conversion).
8586 (_view): Ditto.
8587
67a55ad9 85882001-11-08 Pavel Tsekov <ptsekov@syntrex.com>
cef493d7 8589
67a55ad9
RC
8590 * simpsock.h (SimpleSocket::invalidate): Declare new method.
8591 * simpsock.cc (SimpleSocket::invalidate): Implement new method.
8592 (SimpleSocket::SimpleSocket): Initialize buf to zero. Do not allocate
8593 memory for buf in the constructor.
8594 (SimpleSocket::~SimpleSocket): Use SimpleSocket::invalidate().
8595 (SimpleSocket::printf): Use SimpleSocket::write() instead of send().
8596 (SimpleSocket::write): Check object consistency - return -1 on error.
8597 invalidate() the object on socket write error.
8598 (SimpleSocket::fill): Check object consistency - return -1 on error.
8599 invalidate() the object if socket read error is encountered and there
8600 is no more data available in the internal read buffer.
8601 Allocate memory for the internal read buffer.
8602 (SimpleSocket::gets): Return zero (NULL pointer) if error is encountered
8603 during fill() and no more data is available in the internal read buffer.
8604 (SimpleSocket::read): Check object consistency - return -1 on error.
8605 invalidate() the object if socket read error is encountered.
8606 * nio-ftp.cc (NetIO_FTP:NetIO_FTP): Allow 125 as valid response code to
8607 the RETR command (fix for MS IIS ftp server 5 - possibly others too).
8608 (NetIO_FTP::ok): Check if the SimpleSocket object is ok().
8609 (NetIO_FTP::read): Use NetIO_FTP::ok().
8610 * nio-http.cc: Check for valid return value of SimpleSocket::gets().
8611 (NetIO_HTTP::ok): Check if the SimpleSocket object is ok().
8612
5898e300
RC
86132001-11-09 Robert Collins <rbtcollins@hotmail.com>
8614
58b12a06
MB
8615 * simpsock.cc (cvsid): Avoid compiler warnings (not used, deprecated
8616 conversion).
8617 (SimpleSocket::SimpleSocket): Avoid compiler warnings (deprecated
8618 conversion).
5898e300
RC
8619 (SimpleSocket::printf): Ditto.
8620 (SimpleSocket::write): Ditto.
8621 * simpsock.h (SimpleSocket): Avoid compiler warnings for constructor,
8622 printf and write.
58b12a06
MB
8623 * nio-ftp.cc (cvsid): Avoid compiler warnings (not used, deprecated
8624 conversion).
5898e300 8625 (NetIO_FTP::NetIO_FTP): Remove unused variable done.
58b12a06
MB
8626 * nio-http.cc (cvsid): Avoid compiler warnings (not used, deprecated
8627 conversion).
5898e300 8628
8e58f8fd
RC
86292001-11-07 Charles Wilson <cwilson@ece.gatech.edu>
8630
8631 * geturl.cc (get_url_to_string): clean up memory leak
8632 (get_url_to_file): ditto
cef493d7 8633
4b4002ab
RC
86342001-11-06 Robert Collins <rbtcollins@hotmail.com>
8635
8636 * localdir.cc (dialog_cmd): Go back to IDD_ROOT in every case.
8637 * source.cc (dialog_cmd): Go forward to IDD_ROOT in every case.
8638
94525fd9
RC
86392001-11-06 Pavel Tsekov <ptsekov@syntrex.com>
8640
8641 * fromcwd.cc (found_file): Free() memory containing the version and
58b12a06
MB
8642 filepath information for a given package, before replacing the pointers
8643 which reference this memory.
94525fd9
RC
8644
86452001-11-06 Robert Collins <rbtcollins@hotmail.com>
ca83c665
RC
8646
8647 * fromcwd: Fix compiler warnings for cvsid.
8648 (canonicalize_version): Fix compilter warnings.
8649 (do_fromcwd): Ditto.
8650 * version.h: Fix compiler warnings for canonicalize_version.
8651
ce1f9ec2
RC
86522001-11-03 Robert Collins <rbtcollins@hotmail.com>
8653
8654 * res.rc (IDD_CHOOSE): Move the view caption to the right hand side.
8655
89d82ec7
RC
86562001-11-02 Robert Collins <rbtcollins@hotmail.com>
8657
8658 * res.rc (IDD_CHOOSE): Tweak for use on a 640x480 screen.
8659
c8fea72a
RC
86602001-11-02 Robert Collins <rbtcollins@hotmail.com>
8661
58b12a06
MB
8662 * choose.cc (set_action): Correctly allow skip for any uninstalled
8663 package.
8114d309
RC
8664
86652001-11-02 Robert Collins <rbtcollins@hotmail.com>
8666
58b12a06
MB
8667 * choose.cc (default_trust): Change the "Required" forced install
8668 category to "Base".
c8fea72a 8669
f557695e
RC
86702001-11-02 Robert Collins <rbtcollins@hotmail.com>
8671
8672 * choose.cc: Ran indent.
58b12a06
MB
8673 (set_action): When the requested trust level is missing and the level
8674 was not user requested, set the action to ACTION_SAME_CURR.
f557695e 8675
9a60dafc
CF
86762001-11-01 Christopher Faylor <cgf@redhat.com>
8677
cef493d7 8678 * Makefile.in (mingw_getopt.o): Fix typo in non-verbose compilation.
f557695e
RC
8679
86802001-11-02 Robert Collins <rbtcollins@hotmail.com>
8681
8682 * choose.cc (_view::init_headers): Resync with the paint logic.
9a60dafc 8683
878faffd
RC
86842001-11-02 Robert Collins <rbtcollins@hotmail.com>
8685
58b12a06
MB
8686 * choose.cc (add_required): Allow SKIP and SRC_ONLY for currently
8687 installed packages.
878faffd 8688
05bfdf26
RC
86892001-11-02 Robert Collins <rbtcollins@hotmail.com>
8690
58b12a06
MB
8691 * choose.cc (default_trust): Autoset currently installed packages per
8692 the user's selection of prev/curr/exp.
05bfdf26 8693
0b9af00c
RC
86942001-11-02 Robert Collins <rbtcollins@hotmail.com>
8695
8696 * splash.cc (dialog_proc): Return TRUE as specified in the WIN32 API.
8697
7cefe128
RC
86982001-11-02 Pavel Tsekov <ptsekov@syntrex.com>
8699
8700 * geturl.cc (is_showing): Remove.
8701 (is_local_install): New static variable. Controls whether the
8702 progress dialog and the supporting thread will be created.
58b12a06
MB
8703 (dialog_proc): Return TRUE to WM_INITDIALOG as specified by the WIN32
8704 API.
7cefe128 8705 (init_dialog): Remove usage of SetForegroundWindow and is_showing.
cef493d7 8706 This prevents the progress dialog to gain control over the
7cefe128
RC
8707 application and fixes the "setup.exe going to background" problem.
8708 (progress): Use is_local_install.
8709 (get_url_to_string): Set is_local_install.
8710 (dismiss_url_status_dialog): Use is_local_install.
8711 * install.cc (dialog_proc): Return TRUE as specified in WIN32 API.
8712 (init_dialog): Remove usage of SetForegroundWindow.
cef493d7 8713 This prevents the progress dialog to gain control over the
7cefe128
RC
8714 application and fixes the "setup.exe going to background" problem.
8715
42a99ed1
RC
87162001-11-02 Robert Collins <rbtcollins@hotmail.com>
8717
8718 * choose.cc (list_click): Change r to row for clarity.
8719 When we shrink the list below 1 page, scroll to the top of the list.
8720 (_view::click): Return the actual change for contractions.
58b12a06
MB
8721 (dialog_proc): Return TRUE to WM_INITDIALOG as specified by the Win32
8722 API.
42a99ed1 8723
45c2d7d3
RC
87242001-11-02 Robert Collins <rbtcollins@hotmail.com>
8725
58b12a06
MB
8726 * choose.cc (dialog_cmd): Swap cygwin root selection and local dir
8727 selection order.
45c2d7d3
RC
8728 * localdir.cc: Ran indent.
8729 (get_root_dir_now): New function.
8730 (save_local_dir): New function.
58b12a06
MB
8731 (dialog_cmd): Use it and swap cygwin root selection and local dir
8732 selection order.
45c2d7d3 8733 (do_local_dir): If there is a saved local dir, read it in.
58b12a06
MB
8734 * net.cc (dialog_cmd): Swap cygwin root selection and local dir
8735 selection order.
45c2d7d3
RC
8736 * root.cc (dialog_cmd): Ditto.
8737 * source.cc (dialog_cmd): Ditto.
8738
2399c54d
RC
87392001-11-01 Robert Collins <rbtcollins@hotmail.com>
8740
8741 * choose.cc(list_vscroll): Return 0 as required by win32.
8742 (list_hscroll): Ditto.
8743 (list_click): Ditto.
8744
8e4402a9
RC
87452001-11-01 Robert Collins <rbtcollins@hotmail.com>
8746
8747 * argv.cc: Remove.
8748 * argv.h: Remove.
8749 * main.cc(WinMain): Use __argv to retrieve command line parameters.
8750 * Makefile,in: Remove argv.o.
8751
c168185f
RC
87522001-11-01 Matt Hargett <matt@use.net>
8753
cef493d7
CF
8754 * geturl.cc (progress): Change int to unsigned int to eliminate
8755 lint warnings.
8756 * (get_url_to_string): Check for NULL pointer.
8757 * mount.cc (find2): Use free instead of delete for malloc'd
8758 memory.
8759 * nio-http.cc (NetIO_HTTP::NetIO_HTTP): Fix memory leak.
c168185f 8760
f97a1ece
RC
87612001-10-31 Robert Collins <rbtcollins@hotmail.com>
8762
58b12a06
MB
8763 * choose.cc(_view::insert_under): Handle linen > nlines and lines[linen]
8764 with neither a package nor a category. The lines[linen] bug was reported
8765 by Matt (matt@usa.net).
8766 (read_installed_db): Bugfix for testing whether a package has a source
8767 tarball. Reported by Matt (matt@usa.net).
8768 * geturl.cc(dialog): Rename gw_dialog to local_gw_dialog to avoid
8769 programmer confusion and lint errors. Reported by Matt (matt@usa.net).
f97a1ece 8770
d52ed64b
RC
87712001-10-31 Robert Collins <rbtcollins@hotmail.com>
8772
58b12a06
MB
8773 * argv.cc: New file, converts arguments for -mwindows
8774 programs. (Simplified derivation from dcrt0.cc.)
d52ed64b
RC
8775 * argv.h: New file.
8776 * Makefile,in: Add argv.o and mingw_getopt.o to setup.exe object list.
8777 Add mingw_getopt.o build rule.
8778 * main.cc(WinMain): Initialise argv and argc for use by getopt.
8779
392ba1ba
CF
87802001-10-27 Christopher Faylor <cgf@redhat.com>
8781
8782 * res.rc: Rearrange info on top line slightly.
8783
31324d15
CF
87842001-10-27 Christopher Faylor <cgf@redhat.com>
8785
8786 * desktop.cc (make_passwd_group): Move file creation earlier in the
8787 process to ensure that passwd-grp.bat reflects desired operation.
8788
87892001-27-10 Trevor Forbes <t4bs@hotmail.com>
8790
8791 * postinstall.cc (each): Remove "*.done" file else rename will fail.
8792
ee411d77
CF
87932001-10-16 Christopher Faylor <cgf@redhat.com>
8794
8795 * res.rc: Oops. Take 640x480 screen size into account.
8796
e74944da
CF
87972001-10-16 Christopher Faylor <cgf@redhat.com>
8798
8799 * res.rc: Enlarge chooser screen.
8800
e368cfb9
CF
88012001-10-12 Christopher Faylor <cgf@redhat.com>
8802
8803 * Makefile.in: Accomodate changes to w32api_include macro.
8804
a6ba3670
CF
88052001-10-12 Christopher Faylor <cgf@redhat.com>
8806
8807 * Makefile.in: Use correct flags for windres.
8808
683e96f6
CF
88092001-10-12 Christopher Faylor <cgf@redhat.com>
8810
8811 * Makefile.in (CFLAGS): Remove -nostdinc from CFLAGS.
8812
2c18c00b
CF
88132001-10-12 Christopher Faylor <cgf@redhat.com>
8814
8815 * choose.cc (pick_line::paint): Reorganize after botched patch.
8816
0f61a05a
CF
88172001-10-12 Christopher Faylor <cgf@redhat.com>
8818
8819 * choose.cc (pick_line::paint): Add missing declaration.
8820
308d6f3e
CF
88212001-10-10 Ralf Habacker <Ralf.Habacker@freenet.de>
8822
8823 * choose.cc (pick_line::paint): Add package name to sdesc for display.
8824
3bcf85be
RC
8825Wed Sep 26 21:39:00 Robert Collins rbtcollins@hotmail.com
8826
8827 * choose.cc (_view::insert_pkg): Correctly exit loop.
8828 * iniparse.y (register_category): Always insert new categories.
8829
fb2cd8f6
CF
8830Fri Sep 21 13:56:32 2001 Christopher Faylor <cgf@cygnus.com>
8831
8832 * inilex.l (yylex): For comments, eat all characters up to, but not
8833 including newline.
8834
127b32e1
CF
8835Sun Aug 26 12:50:01 2001 John Marshall <jmarshall@acm.org>
8836
8837 * fromcwd.cc (found_file): Use correct package name when adding an
8838 unknown package rather than random stack garbage.
8839
2cd555aa
CF
8840Sun Aug 12 14:25:21 2001 Christopher Faylor <cgf@cygnus.com>
8841
8842 * desktop.cc (make_passwd_group): .bat files need \r\n endings.
8843
4254cc64
CF
8844Wed Aug 8 13:53:47 2001 Christopher Faylor <cgf@cygnus.com>
8845
8846 * desktop.cc (etc_profile): Leave environment variables untouched.
8847
acbae401
CV
88482001-08-07 Corinna Vinschen <corinna@vinschen.de>
8849
8850 * autoload.c: Add dynamic load statements for NT/W2K
8851 advapi32 functions not available in 9x/ME.
8852 * main.cc (set_default_dacl): New function.
8853 (WinMain): Call `set_default_dacl' if running on NT/W2K.
8854
969a294c
CF
8855Sat Aug 4 21:35:53 2001 Christopher Faylor <cgf@cygnus.com>
8856
8857 * ini.h (_CategoryPackage): Change pkg field to pkgname for
8858 consistency.
8859 * choose.cc: Use pkgname field when referencing _CategoryPackage
8860 throughout.
8861 (fill_missing_category): Don't add excluded packages.
8862 (default_trust): Ditto.
8863 (_view::insert_pkg): Ditto.
8864 * iniparse.y (register_category): Use consistent variable name.
8865
9eeb0e83
ED
88662001-07-09 Egor Duda <deo@logos-m.ru>
8867
8868 * choose.cc: Use system foreground color for text output.
8869
06560feb
CF
8870Sat Jul 7 00:40:28 2001 Christopher Faylor <cgf@cygnus.com>
8871
8872 * choose.cc (set_action): Use default trust for determining reinstall
8873 and source only.
8874 (default_trust): Set default trust.
8875 (pick_line::paint): Allow source selection when reinstalling or
8876 retrieving.
8877
1fb09149
CF
8878Fri Jul 6 18:08:49 2001 Christopher Faylor <cgf@cygnus.com>
8879
8880 * choose.cc (isinstalled): Modify to properly accomodate special case
8881 of "download only".
8882 (set_action): Check downloaded components, not installed components if
8883 "download only".
8884 (set_existence): Always include full list of files when "download
8885 only".
8886
14cfffa5
CF
8887Fri Jul 6 00:37:05 2001 Christopher Faylor <cgf@cygnus.com>
8888
8889 * choose.cc (pick_line::paint): Properly display "na" field when no
8890 source exists.
8891
f54385f6
CF
8892Thu Jul 5 00:34:23 2001 Christopher Faylor <cgf@cygnus.com>
8893
8894 * choose.cc (scan2): Ensure that older versions do not show up in
8895 "Test" slot.
8896
85b1fb54
CF
8897Mon Jul 2 15:47:59 2001 Christopher Faylor <cgf@cygnus.com>
8898
8899 * choose.cc (set_action): Allow "Skip" action if trust != installed.
8900 * res.rc: Fix copyright.
8901
2dada532
CF
8902Sat Jun 30 14:05:21 2001 Michael A Chase <mchase@ix.netcom.com>
8903
8904 * res.rc (IDD_LOCAL_DIR): Change caption to match the other dialog
8905 boxes.
06c6d195 8906 (IDD_CHOOSE): Adjust horizontal size so package names are visible.
2dada532
CF
8907
8908 * choose.cc: Restore some more changes from 2001-06-25, throughout.
8909 (paint): Wrap some excessively long lines.
8910 (pick_line::paint): Ditto. Move the arrow in the "Current" column
8911 right to where it belongs. Move the source checkbox slightly to the
8912 right.
8913 (do_choose): List categories and required packages in setup.log.full.
8914
8915Sat Jun 30 23:04:59 2001 Christopher Faylor <cgf@cygnus.com>
8916
58b12a06
MB
8917 * choose.cc (scan2): Restore source scanning eliminated by previous
8918 checkin.
2dada532 8919
1b13eeec
CF
8920Sat Jun 30 15:18:33 2001 Christopher Faylor <cgf@cygnus.com>
8921
8922 * ini.h (struct _Info): Add "derived" element.
8923 * choose.cc (scan2): Try to place unknown tar files into proper slot
8924 when package exists in setup.ini but tar file does not.
8925
9307254d
RC
8926Sat Jun 30 13:39:00 2001 Robert Collins <rbtcollins@hotmail.com>
8927
8928 * choose.cc (create_listview): Call set_view_mode with VIEW_CATEGORY.
8929 (do_choose): Log the first category name.
8930
3467d79f
CF
8931Fri Jun 29 23:07:44 2001 Christopher Faylor <cgf@cygnus.com>
8932
8933 *ini.h: Reapply 2001-06-25 changes.
8934 * choose.cc (add_required): Ditto. Default to "Keep" state if
8935 UNINSTALL and product is installed. Default to curr state if SKIP,
8936 etc.
8937 (keep_or_skip): New function. Returns skip or keep state depending on
8938 installed state of package.
8939 (default_trust): Use keep_or_skip to set state.
8940 (_view::insert_pkg): Use calloc to allocate lines.
8941 (set_view_mode): Adapt 2001-06-25 change to set_full_list here.
8942
8f53e82a
RC
8943Sat Jun 30 11:01:00 2001 Robert Collins <rbtcollins@hotmail.com>
8944
1fb09149 8945 * choose.cc: Remove globals full_list, headers, package_indexes and
8f53e82a
RC
8946 nindexes.
8947 Add globals cat_headers, pkg_headers and chooser.
8948 (add_required): New function.
8949 (paint): Use the chooser for header details.
8950 Call into the chooser to paint each line.
1fb09149 8951 (list_click): Use new global variables.
8f53e82a
RC
8952 Call into the chooser to handle the click.
8953 Repaint the entire view if packages have been added or removed.
8954 (note_width): Get passed a headers struct rather than using a global
8955 variable.
8956 (fill_missing_category): New function.
8957 (default_trust): Skip non-"Required" or "Misc" packages.
8958 (pick_line::set_line (Package *)): New function.
8959 (pick_line::set_line (Category *)): New function.
8960 (pick_line::paint): New function.
8961 (pick_line::click): New function.
8962 (_view::_view): New function.
8963 (_view::set_view_mode): New function.
8964 (_view::mode_caption): New function.
8965 (_view::set_headers): New function.
8966 (_view::init_header): New function.
8967 (_view::insert_pkg): New function.
8968 (_view::insert_category): New function.
8969 (_view::insert_at): New function.
8970 (_view::insert_under): New function.
8971 (_view::clear_view): New function.
8972 (viewsplusplus): New function.
8973 (_view::client): New function.
8974 (set_view_mode): Use new chooser functionality.
8975 (set_full_list): Use new global variables.
8976 (create_listview): Instantiate chooser.
8977 Remove all hardcoded headers[] code.
8978 (dialog_cmd): On trust changes, check dependencies.
8979 (getcategorybyname): New function.
8980 (getpackagecategorybyname): New function.
8981 (scan2): Use case-insensitive package comparison.
8982 (do_choose): Use fill_missing_category ().
8983 Show some category data.
8984 * ini.h: Protect against multiple inclusion.
8985 (views) New enum.
8986 (_CategoryPackage): New struct.
8987 (_Category): New struct.
8988 (_Package): Change category to Category * from char *.
8989 (extern Category category): New global variable.
8990 (extern in ncategories): Ditto.
8991 (getcategorybyname): New prototype.
8992 (catpackagecategorybyname): New prototype.
8993 (register_category): New prototype.
8994 (add_category): New prototype.
8995 * iniparse.y: Parse multiple categories per package.
2dada532
CF
8996 (category): New global variable.
8997 (ncategories): New global variable.
8f53e82a
RC
8998 (new_package): Compare package against NULL, not 0.
8999 (new_requirement): Source formatting fix.
9000 (register_category): New function.
9001 (add_category): New function.
9002 * res.rc: Change IDC_CHOOSE_FULLPART to IDC_CHOOSE_VIEW.
9003 IDC_CHOOSE_VIEWCAPTION: New control.
9004 * resource.h: Change IDC_CHOOSE_FULLPART to IDC_CHOOSE_VIEW.
9005 IDC_CHOOSE_VIEWCAPTION: New control.
9006 Increment _APS_NEXT_CONTROL_VALUE.
9007
26a27c14
CF
9008Mon Jun 25 00:56:37 2001 Michael A Chase <mchase@ix.netcom.com>
9009
e19ad6a3 9010 * choose.cc (paint): Wrap excessively long lines.
26a27c14
CF
9011 (list_click): Ditto.
9012 (create_listview): Ditto.
9013 (do_choose): Ditto. Replace TABs and remove CRs in lines written to
9014 setup.log.full. Allow "Yes" for source exists in setup.log.full when
9015 installing from local directories.
9016
97312777
CF
9017Mon Jun 25 00:56:37 2001 Christopher Faylor <cgf@cygnus.com>
9018
5f9f0d8d
CF
9019 * choose.cc (set_action): Only clear srcpicked when moving to next
9020 state. Allow source installation if it exists in the current "trust"
9021 state. Don't move to skip state when package is installed.
97312777
CF
9022 (list_click): Don't allow source clicking when no source is available.
9023 (set_full_list): Display package when not is_full_action.
9024 * ini.h (is_full_action): Define.
9025
72fd1d1e
CF
9026Sun Jun 17 12:06:14 2001 Christopher Faylor <cgf@cygnus.com>
9027
9028 * install.cc (check_for_old_cygwin): New function. First stab at
9029 checking for old cygwin versions.
9030 (do_install): Call check_for_old_cygwin if there were no errors during
9031 the install.
9032
41ac91b5 9033Sat Jun 16 11:33:51 2001 Michael A Chase <mchase@ix.netcom.com>
86202506
CF
9034
9035 * choose.cc (_Info::_Info): Test _source paramenter for non-NULL rather
9036 than zeroed "source" element.
9037
80429b97
CF
9038Fri Jun 15 20:54:43 2001 Christopher Faylor <cgf@cygnus.com>
9039
9040 * choose.cc (scan2): Insert unknown tar archives, found on disk, into
9041 the highest available "hole" in the trust array.
9042
654ea642
CF
9043Fri Jun 15 00:20:48 2001 Christopher Faylor <cgf@cygnus.com>
9044
9045 * choose.cc (set_existence): Use pointer method for indexing in trust
9046 array.
9047 (create_listview): Ditto.
9048 (scan2): Ditto. Also, use consistent variable name for indexing into
9049 trust array.
9050 * ini.h (Package): Reorganize info array for easier scanning.
9051
e98d90bd
CF
9052Fri Jun 15 00:01:51 2001 Christopher Faylor <cgf@cygnus.com>
9053
9054 * choose.cc (isinstalled): Eliminate special download only test.
9055 (set_action): Don't move to next state if in ACTION_SAME range and not
9056 incrementing.
9057 (choose_caption): Display "Retrieve" rather than "Reinstall" when just
9058 downloading.
9059 (do_choose): Sort packages after all packages have been read.
9060 Accomodate the fact that first element in trust array is empty so that
9061 log files don't report the wrong trust value.
9062 * iniparse.y (new_package): Malloc space for package name or suffer
9063 memory corruption.
9064
38c97581
CF
9065Thu Jun 14 22:43:59 2001 Robert Collins <rbtcollins@hotmail.com>
9066
9067 * ini.h (Dependency): New structure. Declare new function.
58b12a06
MB
9068 * inilex.l (yylex): Detect new setup.ini options - category and
9069 requires.
38c97581
CF
9070 * iniparse.y: Declare new setup.ini token values.
9071 (yyparse): Parse new token values.
9072 (new_requirement): New function.
9073
9074Thu Jun 14 22:43:26 2001 Christopher Faylor <cgf@cygnus.com>
9075
9076 * choose.cc (read_installed_db): Eliminate obsolete code.
9077
3ae6c15c
CF
9078Thu Jun 14 22:11:53 2001 Christopher Faylor <cgf@cygnus.com>
9079
9080 * choose.cc (set_action): Set trust on "redo".
9081 (_Info::_Info): New constructor.
9082 (read_installed_db): Use new constructor. Use trusts type for
9083 iterator.
9084 * ini.h (struct _Info): Label struct, add constructor.
9085 (Package): Make installed_ix a type 'trusts.'
9086 * install.cc (uninstall_one): Unset any installed info for current
9087 package.
9088 (install_one): Allocate new Info struct for installed reflecting new
9089 installed info.
9090 (do_install): Don't output line to installed.db if package is being
9091 uninstalled.
9092
9c0a9876
CF
9093Thu Jun 14 20:33:01 2001 Robert Collins <rbtcollins@hotmail.com>
9094
9095 * choose.cc (getpkgbyname): Use consistent method for scanning package
9096 array.
9097
68b27c12
CF
9098Wed Jun 13 23:33:08 2001 Christopher Faylor <cgf@cygnus.com>
9099
9100 * choose.cc: Add some comments.
9101 (getpkgbyname): Use strcasecmp for comparisons.
9102
07108cc2
CF
9103Wed Jun 13 16:07:00 2001 Christopher Faylor <cgf@cygnus.com>
9104
f0984dcb 9105 * install.cc (do_install): Avoid checking for download action if
07108cc2
CF
9106 package wasn't currently retrieved.
9107
c46a33a9
CF
9108Wed Jun 13 11:27:22 2001 Christopher Faylor <cgf@cygnus.com>
9109
9110 * choose.cc: Eliminate extra array throughout. Use element in package
9111 structure instead. Use pointers rather than array indexes where
9112 appropriate.
9113 (set_action): New function to set next action based on current.
9114 (choose_caption): New function. Returns display caption.
9115 (check_existence): Change arguments. Use pointer to 'info' structure.
9116 (set_existence): Use pointer rather than array index.
9117 (default_trust): Use trusts enum for second argument.
9118 (set_full_list): Honor exclude element in package structure.
9119 (build_labels): Eliminate.
9120 (base): Make global. Use const char * argument.
9121 (get_package_version): Eliminate.
9122 (getpkgbyname): New function.
9123 (read_installed_db): Use parse_filename to get version info.
9124 * desktop.cc (make_passwd_group): Use getpkgbyname function.
9125 * download.cc (get_file_size): const argument.
9126 (do_download): Use is_download_action to determine when something
9127 should be downloaded.
9128 * filemanip.h: Add some functions.
9129 * ini.cc (do_ini): Use NULL rather than 0 for pointer assignment.
9130 * ini.h: Use enums for actions and trusts.
9131 (is_download_action): New macro.
9132 (is_upgrade_action): Ditto.
9133 (is_uninstall_action): Ditto.
9134 (struct Package): Add new fields.
9135 * inilex.l (yylex): Detect new setup.ini options.
9136 * iniparse.y: Declare new tokens.
9137 (yyparse): Detect exclude keyword. Fill out version field even if
9138 version == 0.
9139 (new_package): Use greater granularity when allocating package array to
9140 avoid repeated calls to realloc.
9141 * install.cc (exists): const argument.
9142 (uninstall_one): Take pkg argument.
9143 (install_one): Ditto. Eliminate unneeded arguments which can be
9144 derived from package info.
9145 (do_install): Iterate over package array using a pointer. Use
9146 is_download_action to control when package should be downloaded.
9147 * tar.cc (tar_open): const argument.
9148 * tar.h: Refloect const argument.
9149
7cc06fd3
CF
91502001-05-31 Michael Chase mchase@ix.netcom.com
9151
9152 * main.cc (WinMain): Add setup version to starting setup.log entry
9153
9522028b
CF
9154Tue May 29 21:37:58 2001 Yukihiko Sohda <sohda@is.titech.ac.jp>
9155
9156 * inilex.l: Add + to list of valid string characters.
9157
e9b1aaa7
CF
9158Mon May 28 20:54:50 2001 Christopher Faylor <cgf@cygnus.com>
9159
9160 * Makefile.in: Remove more stuff in the clean target.
9161
8e1299fa
CF
9162Mon May 28 18:24:59 2001 Christopher Faylor <cgf@cygnus.com>
9163
9164 * Makefile.in: Correctly generate iniparse.h.
9165
85553593
CV
9166Tue Mar 6 19:14:00 2001 Corinna Vinschen <corinna@vinschen.de>
9167
9168 * geturl.cc (get_url_to_file): Add parameter `allow_ftp_auth'.
9169 * geturl.h: Change declaration of `get_url_to_file' accordingly.
9170 * netio.cc (NetIO::NetIO): Add parameter `allow_ftp_auth'.
9171 Set member `ftp_auth'.
9172 (NetIO::open): Add parameter `allow_ftp_auth'. Use it in calls
9173 to constructors of derived classes.
9174 (NetIO::get_ftp_auth): New method.
9175 * netio.h: Change class definition accordingly.
9176 * nio-ftp.cc (NetIO_FTP::NetIO_FTP): Add parameter `allow_ftp_auth'.
9177 Take global variables `net_ftp_user' and `net_ftp_passwd' into account.
9178 Add code for ftp authentication retry.
9179 * nio-ftp.h: Change class definition accordingly.
9180 * nio-http.cc (NetIO_HTTP::NetIO_HTTP): Add parameter `allow_ftp_auth'.
9181 Add code for ftp authentication retry in case of proxy connection.
9182 * nio-http.h: Change class definition accordingly.
9183 * res.rc: Add FTP authentication dialog.
9184 * resource.h: Add new constants used in res.rc.
9185 * state.h: Add variables `net_ftp_user' and `net_ftp_passwd'.
9186
c4174b9c
CF
9187Sun May 27 17:12:23 2001 Christopher Faylor <cgf@cygnus.com>
9188
9189 * res.rc (IDD_SPLASH): Add a copyright year.
9190
0af2d779
CF
9191Sun May 27 15:42:18 2001 Christopher Faylor <cgf@cygnus.com>
9192
9193 * Makefile.in: Make iniparse.y produce a c++ file.
9194 * choose.cc (set_existence): Revert 2001-05-27 change.
9195 * ini.cc: Remove "C" from declaration of yyparse.
9196 * iniparse.y (yyparse): Fill out version field by default when a binary
9197 install is detected and no version has been set yet.
9198 * install.cc (do_install): Mount things earlier so that we can use
9199 proper mount table settings. Don't remove mounts since they are now
9200 honored.
9201 * mount.cc (create_mount): Reread the mount table after establishing a
9202 new mount.
9203 (read_mounts): Explicitly clear root_here to allow multiple uses of
9204 this function. Ensure that there is no garbage in the table when we've
9205 exhausted all of the mounts in the registry.
9206 (cygpath): Accomodate ./ in path.
9207
85b43844
CF
9208Sun May 27 02:59:07 2001 Christopher Faylor <cgf@cygnus.com>
9209
0af2d779
CF
9210 Use parse_filename method to parse filenames throughout. Use
9211 get_root_dir to retrieve the current root directory throughout. Set
9212 const in argument list, where appropriate, throughout.
9213 * choose.cc (set_existence): Detect case of uninstalled package with no
9214 version.
85b43844
CF
9215 (parse_filename): New function.
9216 * filemanip.h (fileparse): New structure.
9217 * mount.cc (read_mounts): Remember where we found the root mount.
9218 (set_root_dir): New function.
9219 (get_root_dir): Ditto.
9220 * mount.h: Declare new functions.
9221 * site.cc (get_root_dir_now): Renamed from get_root_dir.
9222 (save_site_url): Use new function name.
9223 (get_initial_list_idx): Ditto.
9224
08f8c762
CF
9225Sat May 26 21:23:59 2001 Christopher Faylor <cgf@cygnus.com>
9226
9227 * choose.cc: Use a constant throughout to deal with chooser icon
9228 length.
9229 * res.rc (IDD_CHOOSE): Increase size of chooser box.
9230
47f8d8b3
CF
92312001-05-07 Brian Keener <bkeener@thesoftwaresource.com>
9232
9233 * choose.cc (do_choose): Fix incorrect assignment of trust setting to
9234 use when Redownload or Sources Only selected.
9235
6a748750
CF
9236Thu May 10 22:35:59 2001 Christopher Faylor <cgf@cygnus.com>
9237
9238 Reformat file after botched patch formatting.
9239 * choose.cc (which_trust): Eliminate variable.
9240 (default_trust): Don't set which_trust.
9241 (do_choose): Use selected trust when reinstalling or installing source.
9242
a351e48c
CF
9243Thu May 10 21:04:18 2001 Christopher Faylor <cgf@cygnus.com>
9244
9245 Change concat to cygpath throughout.
9246 Change map_filename to cygpath throughout.
9247 * concat.cc (vconcat): New function.
9248 (concat): Use vconcat.
9249 * concat.h: Reflect above.
9250 * install.cc (map_filename): Eliminate.
9251 (install_one): Free dest_file.
9252 * mount.cc (find2): Expect input key to be pointing to mount record.
9253 (in_table): New function.
9254 (is_admin): Move from root.cc.
9255 (read_mounts): New function.
9256 (path_prefix_p): New function.
9257 (cygpath): New function.
9258 * mount.h: Define new functions and structure.
9259 * root.cc (in_table): Move to mount.cc.
9260 (do_root): Call read_mounts to initialize root stuff and mount table.
9261 * site.cc (get_root_dir): Ditto.
9262
e227ee24
CF
92632001-05-09 Matt Hargett <matt@use.net>
9264
9265 * Makefile.in: Remove *.rc from clean.
9266
25fd2965
CF
9267Tue May 8 23:33:38 2001 Christopher Faylor <cgf@cygnus.com>
9268
9269 * choose.cc (scan2): Fix incorrect setting of TRUST_CURR rather than
9270 TRUST_PREV which produced "0" versions.
9271
42bf5b92
CF
92722001-05-07 Brian Keener <bkeener@thesoftwaresource.com>
9273
9274 * resource.h: Add new field IDC_CHOOSE_INST_TEXT. Modify
9275 _APS_NEXT_CONTROL_VALUE to account for addition of
9276 IDC_CHOOSE_INST_TEXT.
9277 * res.rc (IDD_CHOOSE): Modify choose dialog to use new field
9278 IDC_CHOOSE_INST_TEXT for screen text. Modify choose Dialog to allow
9279 hot keys to select Prev, Curr, Exp.
9280 * ini.h: Add new actions for ACTION_REDO and ACTION_SRC_ONLY. Modify
9281 define for LOOP_PACKAGES to include new actions ACTION_REDO and
9282 ACTION_SRC_ONLY.
9283 * choose.cc: Add new Trusts for TRUST_REDO and TRUST_SRC_ONLY.
9284 (paint): Modify to check TRUST_SRC_ONLY when determining Bitmap for
9285 source Checkbox to use.
9286 (build_labels): Add logic to allow for selection of Source only
9287 Download/ReDownload/Install/Reinstall and also to Redownload/Reinstall
9288 current version binary.
9289 (dialog_proc): Add conditional display for file selection prompt based
9290 on download vs install using IDC_CHOOSE_INST_TEXT.
9291 (do_choose): Add new logic for TRUST_REDO and TRUST_SRC_ONLY selection
9292 and modify logic for TRUST_UNINSTALL, TRUST_KEEP, and TRUST_NONE to
9293 handle the instance where Source Download/Install was selected. Modify
9294 log file to store appropriate information regarding Action selected and
9295 the new actions that were added (I.E.: ACTION_REDO and
9296 ACTION_SRC_ONLY).
9297 * download.cc: Add include for <unistd.h> and "port.h".
9298 (download_one): Modify parameter list to include the selected action
9299 for the file to be downloaded. Modify size check against expected size
9300 to include check for ACTION_REDO and ACTION_SRC_ONLY. Modify rename of
9301 .tmp file to also remove the destination file if exists due to ability
9302 to redownload source and binary now.
9303 (do_download): Modify to also use ACTION_REDO and ACTION_SRC_ONLY in
9304 calculation of Download Bytes. Modify to also use ACTION_REDO and
9305 ACTION_SRC_ONLY in determining files selected for download.
9306 * install.cc (uninstall_one): Add check to treat a Reinstall like an
9307 upgrade so current version will be uninstalled prior to reinstall.
9308 (do_install): Add logic to handle ACTION_REDO and ACTION_SRC_ONLY for
9309 uninstalling and installing binary and source packages.
9310 * desktop.cc (make_passwd_group): Modify logic to account for a Source
9311 only cygwin install when checking for cygwin to determine need for
9312 mkpasswd and mkgroup.
9313
9314Mon May 7 23:33:30 2001 Matt Hargett <matt@use.net>
8a09aa99
CF
9315
9316 * winsup/cinstall/res.rc: Added accelerators and improved focus order.
9317 Removed WS_DISABLED from "OK" buttons to accomodate default focus
9318 changes in net.cc and source.cc.
9319 * winsup/cinstall/net.cc (dialog_proc): If no radio button is selected,
9320 a default is selected.
9321 * winsup/cinstall/source.cc (dialog_proc): Ditto.
9322 (check_if_enable_next): Removed. No longer needed since a radio button
9323 will always be selected.
9324 (load_dialog): Removed call to check_if_enable_next.
9325 (dialog_cmd): Ditto. Also added default to switch.
9326
87bdba0c
CF
9327Tue Apr 24 23:42:02 2001 Christopher Faylor <cgf@cygnus.com>
9328
9329 * res.rc: Resize affected text.
9330
8293fc16
CF
9331Tue Apr 24 23:35:31 2001 Christopher Faylor <cgf@cygnus.com>
9332
9333 * net.cc (do_net): Default to direct download.
87bdba0c 9334 * res.rc: Move default selections to the top.
8293fc16 9335
ed96c6da
EB
93362001-04-18 Earnie Boyd <earnie@users.sourceforge.net>
9337
9338 * win32.h: Remove the definitions for _UNION_NAME and _STRUCT_NAME.
9339 Must now include <windows.h> and not the pieces.
9340 * choose.cc (create_listview): Clean up type mismatch problems.
9341 * dialog.h (NEXT(id)): Ditto.
9342 * geturl.cc (dialog): Ditto.
9343 * install.cc (dialog): Ditto.
9344 * splash.cc (load_dialog): Ditto.
9345
fe94cc29
CF
9346Wed Apr 18 18:59:21 2001 Christopher Faylor <cgf@cygnus.com>
9347
9348 * tar.cc (class gzbz): Define dummy virtual functions.
9349
fb087b80
CF
9350Wed Apr 18 16:01:21 2001 Christopher Faylor <cgf@cygnus.com>
9351
9352 * Makefile.in: Add bz2 include/library support.
9353 * filemanip.h: New file.
fe94cc29
CF
9354 * choose.cc (find_tar_ext): New function. Returns TRUE if .tar.gz or
9355 .tar.bz2 found.
fb087b80
CF
9356 (scan2): Reorganize to use find_tar_ext, accomodating .bz2 extension.
9357 (read_installed_db): Ditto.
9358 (do_choose): Ditto.
9359 * fromcwd.cc (found_file): Ditto.
9360 (do_fromcwd): Ditto.
9361 * tar.cc (class gzbz): New super class for uncompression support.
9362 (gz): New class for gzip support.
9363 (bz): New class for bzip2 support.
9364 (tar_open): Use gzbz class to control file opening.
9365 (tar_ftell): Ditto for returning position in file.
9366 (skip_file): Ditto for reading file.
9367 (tar_next_file): Ditto.
9368 (tar_read_file): Ditto.
9369 (tar_close): Ditto for close.
9370
9371 * zlib/configure.in: Force NM substitution.
9372
9373 * source.cc (do_source): Default to "Install from Internet".
9374
88bcaf07
CF
93752001-03-16 Brian Keener <bkeener@thesoftwaresource.com>
9376
9377 * nio-file.cc (NetIO_File::NetIO_File): Use `get_file_size' instead of
9378 `stat'.
9379 * choose.cc (list_click): Correct inability to select source code for
9380 download.
9381 (scan2): Modify to skip source tarballs when scanning disk for
9382 installable packages.
9383
ef45c299
CV
93842001-03-10 Chris Abbey <chris_abbey@yahoo.com>
9385
9386 * install.cc: install sources into /usr/src instead
9387 of /, also include the sizes of source tarballs
9388 in total_bytes.
9389 * download.cc: include sizes of source tarballs in
9390 total_download_bytes.
9391
9fe1181b
CV
9392Tue Mar 6 19:31:00 2000 Corinna Vinschen <corinna@vinschen.com>
9393
9394 * download.cc (get_file_size): Remove `static'.
9395
2bfdb848
CV
9396Tue Mar 6 19:11:00 2000 Corinna Vinschen <corinna@vinschen.com>
9397
9398 * tar.cc (tar_open): Use `get_file_size' instead of `stat'.
9399
60c632b3
CV
94002001-03-06 Brian Keener <bkeener@thesoftwaresource.com>
9401
9402 * choose.cc (paint): Modify message for nothing to download vs
9403 nothing to install/update based on installation method.
9404 (list_click): Modify to skip versions in selection process if
88bcaf07 9405 installing from local directory and installation file does not exist.
60c632b3
CV
9406 Also leaves Source Action set to N/A if the source file does not exist
9407 and installing from local directory.
9408 (check_existence): New method to check current existence of installation
9409 files based on selected installation method.
9410 (set_existence): New method to set the current existence of installation
9411 files based on selected installation method.
9412 (best_trust): Modify decision process for best trust to base decision on
9413 current trust selected (IE: Prev, Curr, or Test), existence of file and
9414 installation method selected.
9415 (default_trust): Add logic to capture the current trust level and the
9416 trust selected for the given package.
88bcaf07 9417 (set_full_list): Expand decision criteria for displaying a package in
60c632b3
CV
9418 the selection list to include file existence/non-existence and selected
9419 installation method.
9420 (build_labels): Modify criteria for label addition to include
9421 installation method and file existence/non-existence.
88bcaf07 9422 (create_listview): Modify to establish package trust level for each
60c632b3
CV
9423 package before setting up the display list. Also modification to set
9424 current trust button as the default.
88bcaf07 9425 (dialog_cmd): Set response for Prev, Curr, Test button push to perform
60c632b3
CV
9426 a reset of the selection list in addition to setting the default trust.
9427 (get_package_version): New method to provide reusable code for
9428 determining the package version from the file name for a specified
9429 trust.
9430 (scan2): Modify to use new method get_package_version and
9431 also enhance handling of the build for the structures package and
9432 extra.
9433 (read_installed_db): Modify to use the new method
9434 get_package_version and also enhance handling of the build for the
9435 structures package and extra.
88bcaf07 9436 (do_choose): Add additional initialization of package and extra
60c632b3
CV
9437 structures. Modify to use read_installed_db all the time despite
9438 install method. Modify output to setup.log.full log file to increase
9439 readability by adding additional spacing, expanded code and available
9440 versions.
9441 * ini.h: Add new fields install_exists, source_exists and
88bcaf07 9442 partial_list_display to the structure definition for package.
60c632b3
CV
9443 * res.rc (IDD_CHOOSE): Modify choose dialog Prev, Curr, and Test
9444 pushbuttons by replacing with Radio Buttons thus allowing the
9445 operator to better determine which is selected.
9446
2f9645a1
CV
94472001-02-20 Brian Keener <bkeener@thesoftwaresource.com>
9448
88bcaf07 9449 * download.cc (do_download): Add new variables total_download_bytes and
2f9645a1
CV
9450 total_download_bytes_sofar for download progress meter. Add loop
9451 to accumulate the total bytes to download from the selected packages.
9452 * geturl.cc: Add state.h and diskfull.h to include list. Add new
9453 variables gw_iprogress, gw_pprogress, gw_progress_text,
9454 gw_pprogress_text, and gw_iprogress_text to allow for addition of
9455 total packages download progress meter and disk full percent
9456 progress meter. Add variables total_download_bytes and
9457 total_download_bytes_sofar for use by progress meters.
88bcaf07
CF
9458 (dialog_proc): Add new variables gw_iprogress, gw_pprogress,
9459 gw_progress_text, gw_pprogress_text, and gw_iprogress_text to
9460 allow for addition of total packages download progress meter and disk
9461 full percent progress meter.
2f9645a1
CV
9462 (init_dialog): Ditto.
9463 (progress): Ditto.
9464 (get_url_to_file): Ditto.
9465 * geturl.h: Add external definition for total_download_bytes and
9466 total_download_bytes_sofar.
88bcaf07 9467 * res.rc: Add two additional progress meters (IDC_DLS_IPROGRESS)
2f9645a1
CV
9468 and (IDC_DLS_PPROGRESS) and three text objects (IDC_DLS_PROGRESS_TEXT)
9469 and (IDC_DLS_IPROGRESS_TEXT, IDC_DLS_PPROGRESS_TEXT) for use in the
9470 download meters.
88bcaf07 9471 * resource.h: Add new fields for progress meters and text and update
2f9645a1
CV
9472 _APS_NEXT_CONTROL_VALUE.
9473
b41962a3
CV
9474Wed Feb 21 13:05:00 2000 Corinna Vinschen <vinschen@redhat.com>
9475
9476 * download.cc (get_file_size): Check for INVALID_HANDLE_VALUE instead
9477 for NULL.
9478
9479Wed Feb 21 11:21:00 2000 Corinna Vinschen <vinschen@redhat.com>
01954c34
CV
9480
9481 * download.cc (download_one): Add missing parenthesis.
9482
88a77116
CV
9483Mon Feb 19 18:59:00 2000 Corinna Vinschen <vinschen@redhat.com>
9484
9485 * download.cc (get_file_size): New function. Eliminates the need
9486 to call `stat'.
9487 (download_one): Call `get_file_size' instead of `stat'. This
9488 workarounds a problem with mingw's `stat' call.
9489
577f35ed
EB
94902001-02-07 Earnie Boyd <earnie@users.sourceforge.net>
9491
9492 * Makefile.in: (%.o: %.rc): Specify --include-dir $(w32api_include).
9493 This is to allow cinstall to build with 2.95.2-7 and to make the
9494 use of headers consistent.
9495
38f5563e
DD
94962000-12-26 Earnie Boyd <earnie_boyd@yahoo.com>
9497
9498 * Makefile.in (autoload.o): Add target to specify -fno-inline-functions
9499
c0a7e0f2
DD
9500Tue Dec 26 03:46:00 2000 Matt Hargett <matt@use.net>
9501
9502 * winsup/cinstall/res.rc: Added accelerators and improved focus
9503 order.
9504
72826a5b
CF
95052000-12-10 Egor Duda <deo@logos-m.ru>
9506
9507 * choose.cc (paint): Use system background color for text output.
9508
9509Sun Dec 10 19:05:25 2000 Christopher Faylor <cgf@cygnus.com>
9510
9511 * Makefile.in: Use CXX for linking and for compiling .cc files.
9512 * configure.in: Find correct c++ compiler.
9513 * configure: Regenerate.
9514
67bebcb5
DD
95152000-11-17 DJ Delorie <dj@redhat.com>
9516
9517 * splash.cc (load_dialog): Make message more obvious.
9518 * res.rc: Ditto.
9519
25fb9139
CF
9520Fri Nov 17 17:15:21 2000 Christopher Faylor <cgf@cygnus.com>
9521
9522 * Makefile.in: Use g++ to link so that libstdc++.a gets used. This is
9523 necessary for newer compilers.
9524
ef2007fd
CV
9525Wed Nov 9 2:19:00 2000 Corinna Vinschen <vinschen@redhat.com>
9526
9527 * desktop.cc: Include "ini.h" and "version.h".
9528 (make_passwd_group): Skip the function on 9x/ME boxes when an
9529 older version of Cygwin has been installed which doesn't
9530 support mkpasswd/mkgroup on 9x/ME.
9531 * install.cc: Move the `LOOP_PACKAGES' and `pi' macros to...
9532 * ini.h: ...here.
9533
277b4d56
CV
9534Wed Nov 8 17:10:00 2000 Corinna Vinschen <vinschen@redhat.com>
9535
9536 * desktop.cc (make_passwd_group): Don't exit when started
9537 on 9x/ME since mkpasswd/mkgroup are usable on 9x/ME now.
9538
f8a6415f
DD
9539Sun Nov 5 12:51:42 2000 Jason Tishler <jt@dothill.com>
9540
9541 * install.cc (do_install): Add call to set_cygdrive_flags to sync
9542 the mount modes.
9543 * mount.cc (set_cygdrive_flags): New function.
9544 (get_cygdrive_flags): Ditto.
9545 (default_cygdrive): Ditto.
9546 (set_cygdrive_flags): Ditto.
9547 * mount.h: Add prototype for set_cygdrive_flags.
9548
3b9077d4
DD
95492000-10-23 DJ Delorie <dj@redhat.com>
9550
9551 * ini.h: add source actions
9552 * fromcwd.cc: check for available sources
9553 * res.rc: add checkbox bitmaps
9554 * resource.h: ditto
9555 * check-*.bmp: new
9556 * choose.cc: add source column
9557 * download.cc: download sources if called for
9558 * install.cc: [un]install sources too
9559
1b1b33ac
DD
95602000-10-22 DJ Delorie <dj@redhat.com>
9561
9562 * choose.cc (build_labels): Don't skip TRUST_PREV completely; only
9563 ignore it wrt full_list if there's already a version installed.
9564 (do_choose): Sort the list.
9565 (package_sort): New.
9566
2a1a01e0
DD
95672000-10-12 DJ Delorie <dj@redhat.com>
9568
9569 * res.rc: Add more error strings.
9570 * resource.h: Ditto.
9571 * iniparse.y (new_package): re-initialize if needed.
9572 * download.cc (do_download): Keep track of errors; notify and
9573 allow retry.
9574 * install.cc (do_install): Ditto.
9575
1a9886fe
DD
95762000-10-05 DJ Delorie <dj@redhat.com>
9577
9578 * Makefile.in: fix %.cc rule
9579
40aef45e
DD
95802000-10-04 DJ Delorie <dj@redhat.com>
9581
9582 * desktop.cc: quote HOME and USER, don't . ./.profile
9583
9584 * choose.cc (build_labels): don't include in partial list just
9585 because there's a *previous* version available.
9586
9587 * install.cc (do_install): if installing from local directory with
9588 setup.ini and the file isn't found, look in "." also. Note errors.
9589
dd3f7f9b
DD
95902000-10-02 DJ Delorie <dj@redhat.com>
9591
9592 * ini.cc (do_ini): save setup.ini locally
9593
95942000-10-02 Chris Abbey <cabbey@bresnanlink.net>
9595
9596 * desktop.cc: quote escapes in prompt
9597
fee2a8d0
DD
95982000-10-02 Jason Tishler <jt@dothill.com>
9599
9600 * root.cc (is_admin): New function.
9601 (read_mount_table): Check for administrative priviledges and set
9602 installation scope as appropriate.
9603
a03db251
DD
96042000-09-28 DJ Delorie <dj@redhat.com>
9605
9606 * nio-ftp.cc (ftp_line): handle continuations more robustly
9607
b151e01e 96082000-09-14 Brian Keener <bkeener@thesoftwaresource.com>
0b758d4c
DD
9609
9610 * res.rc: increased the size of the site dialog (IDD_SITE) & the
9611 corresponding list box to provide for more URL's to be listed.
9612 Modified the position of the Back, Next and Cancel buttons to
9613 correspond to the new size of the dialog.
9614
d07591a3
DD
96152000-09-13 DJ Delorie <dj@redhat.com>
9616
9617 * install.cc (do_install): update disk fullness once per package
9618 to improve performance
9619
9620 * choose.cc (create_listview): call ReleaseDC
9621
89725f30
DD
9622Mon Sep 11 22:40 2000 Harold L Hunt II <harold@compasstechnologies.com>
9623
9624 * mkdir.cc: Create directories when ERROR_FILE_NOT_FOUND is
9625 returned, as it seems Samba 2.0.6+ returns this instead of
9626 ERROR_PATH_NOT_FOUND
88bcaf07 9627
6fbc690d
CF
9628Mon Sep 11 19:35:24 2000 Christopher Faylor <cgf@cygnus.com>
9629
9630 * site.cc (get_initial_list_idx): Don't default to saved URL if it
9631 refers to sources.
9632
13d27274
DD
96332000-09-07 DJ Delorie <dj@redhat.com>
9634
9635 * splash.cc: use version.h, not local decl
9636 * res.rc: add "old version" message
9637 * resource.h: ditto
9638 * version.h: new
9639 * fromcwd.cc (canonicalize_version): make global
89725f30
DD
9640 * iniparse.y: add setup-version support, fix bug in blank line
9641 handling
9642
13d27274
DD
9643 * inilex.l: add [exp] as alias for [test], add setup-version
9644 * Makefile.in (version.c): add setup-version tag
9645
9646 * desktop.cc (do_desktop): remove 1.1 version number
9647 (do_desktop_setup): ditto
9648
9649 * ini.cc (do_ini): zero out package list just in case we redo it.
9650
8cfbc487
DD
96512000-09-07 Jeffrey Juliano <juliano@cs.unc.edu>
9652
9653 * choose.cc (list_click): Check for nindexes==0; if so, return.
9654
c92e1307
DD
96552000-09-06 Andrej Borsenkow <Andrej.Borsenkow@mow.siemens.ru>
9656
9657 * localdir.cc: new, local package directory selection dialog; cd
9658 into selected directory
9659 * Makefile.in (OBJS): add localdir.o
9660 * dialog.h: add prototype for do_local_dir
9661 * main.cc (WinMain): initialize local_dir to cwd; add call to
9662 do_local_dir
9663 * net.cc (dialog_cmd): make DO_LOCAL_DIR next dialog
9664 * source.cc (dialog_cmd): ditto
9665 * res.rc: add DO_LOCAL_DIR dialog; remove "current directory" from
9666 presented choices in IDD_SOURCE; add IDS_ERR_CHDIR error string
9667 * resource.h: defines for DO_LOCAL_DIR dialog; define IDS_ERR_CHDIR
9668 * root.cc (dialog_cmd): make DO_LOCAL_DIR previous dialog
9669 * state.h: add local_dir variable
9670
96712000-09-06 Brian Keener <bkeener@thesoftwaresource.com>
50225eae
DD
9672
9673 * desktop.cc: added logic to handle to the new dialog and to
9674 default the setting for the new checkboxes based on whether the
9675 desktop icon or start menu link already exist.
9676 (desktop_icon): correction to desktop directories for desktop icon
9677 creation. Additional logic added for Win95 which does not appear
9678 to have Common Directories so if Common selected and null uses
9679 normal directory.
9680 (start_menu): Additional logic added for Win95 which does not
9681 appear to have Common Directories so if Common selected and null
9682 uses normal directory.
9683 (do_desktop_setup): moved the saving of the icon, creation of the
9684 bat file, profile, passwd, Start Menu link and desktop shortcut to
9685 this method from do_desktop. Made the creation of the desktop
9686 icon and start menu link conditional on settings of new dialog
9687 created for desktop.
9688 * install.cc (do_install): changed next from IDD_S_DESKTOP to
9689 IDD_DESKTOP.
9690 * main.cc (WinMain): changed case IDD_S_DESKTOP to IDD_DESKTOP.
9691 * res.rc: added new resource to create a desktop dialog with 2
9692 checkboxes for creating the desktop icon and start menu link.
9693 * resource.h: changed IDD_S_DESKTOP to IDD_DESKTOP and added two
9694 new controls: IDC_ROOT_MENU and IDC_ROOT_DESKTOP for new dialog.
9695 * state.h: added root_menu and root_desktop for use in dialog.
9696
4a83b7b0
DD
96972000-08-29 DJ Delorie <dj@redhat.com>
9698
9699 * choose.cc (scan_downloaded_files): scan for existing files, so
9700 that the user only sees new downloads.
9701
9702 * nio-ie5.cc (NetIO_IE5): pre-check for wininet.dll, enable dial-up
9703 * site.cc (do_site): if we can't download the mirror list, go back
9704 to the net setup box to choose another transport.
9705 * autoload.c: add more functions
9706 * Makefile.in (ALL_DEP_LDLIBS): remove wininet.a
9707 * resource.h: add WININET message
9708
9709 * net.cc (do_net): no longer default to IE5
9710 * simpsock.h (class SimpleSocket): new, simplify socket operations
9711 * simpsock.cc: ditto
9712 * nio-http.h: new, for direct http protocol
9713 * nio-http.cc: ditto
9714 * nio-ftp.h: new, for direct http protocol
9715 * nio-ftp.cc: ditto
9716 * netio.cc (set_url): move initialization here to handle redirections
9717 (open): add direct http/ftp
9718 * netio.h (NetIO::set_url): new
9719
9720 * log.cc (log_save): create directory for log if needed
9721
9722 * hash.cc, hash.h: new
9723 * Makefile: add hash.o
9724 * choose.cc: enable "uninstall" option
9725 * download.cc: invert action test to accomodate uninstalling
9726 * ini.h: add ACTION_UNINSTALL
9727 * install.cc: add uninstall functionality
9728 * res.rc: make install tag changeable
9729 * resource.h: add uninstall resources
9730
9731 * res.rc: update mirror list URL
88bcaf07 9732
50f64a4b
DD
97332000-08-24 DJ Delorie <dj@redhat.com>
9734
89b1a15b
DD
9735 * log.cc, log.h: new files
9736 * Makefile.in (OBJS): add log.o
9737 * tar.cc: use exit_setup instead of exit
9738 * dialog.cc (fatal): use exit_setup instead of ExitProcess
9739 * msg.cc (fatal): ditto
9740 * install.cc (dialog_cmd): ditto
9741 * ini.cc (do_ini): ditto
9742 * main.cc (main): add logging
9743 * source.cc (do_source): ditto
9744 * root.cc (do_source): ditto
9745 * site.cc (do_site): ditto
9746 * other.cc (do_other): ditto
9747 * net.cc (do_net): ditto
9748 * choose.cc (do_choose): ditto
9749 * download.cc (do_download): ditto
9750 * install.cc (do_install): ditto
9751 * msg.cc (fatal): ditto
9752
9753 * res.rc: mark password boxes as *being* password boxes.
9754
58b12a06
MB
9755 * fromcwd.cc (canonicalize_version): use multiple buffers so that
9756 multiple calls won't use the same buffer.
50f64a4b
DD
9757 * choose.cc (create_listview): don't default to full list if no changes
9758 (base): return computed value, not temporary :-(
9759 (do_choose): don't use installed.db if we're only downloading.
9760
348860fa
DD
97612000-08-23 DJ Delorie <dj@redhat.com>
9762
9763 * nio-ie5.cc (NetIO_IE5): Fix authentication logic
9764 * nio-ie5.h (flush_io): new
9765 * netio.cc (load_dialog): note when we're initializing the dialog
9766 box, and ignore changes to the edit fields then.
9767
5f48f258
DD
97682000-08-21 DJ Delorie <dj@redhat.com>
9769
9770 * README: Update
9771
9772 * fromcwd.cc (found_file): don't remember the canonicalized version
9773
9774 * choose.cc (paint): print "nothing to do" message when list is empty.
9775 (build_labels): Use version "0.0" if no version is available.
9776 (create_listview): default to full list if nothing to install/update.
9777 (base): new, returns basename of file
9778 (read_installed_db): compare base names, not full paths
9779
713bbe5f
DD
97802000-08-11 DJ Delorie <dj@redhat.com>
9781
9782 * choose.cc: add new chooser dialog
9783 * fromcwd.cc: use IDD_CHOOSE
9784 * ini.cc: use IDD_CHOOSE
9785 * main.cc: use IDD_CHOOSE
9786 * ini.h: cosmetic changes
9787 * res.rc: add choose dialog, bitmaps
9788 * choose-spin.bmp: new
9789 * choose-rtarrow.bmp: new
9790 * resource.h: add choose dialog controls
9791
9792 * mount.cc: remove debug statement
88bcaf07 9793
2e9cbac5
DD
97942000-08-08 DJ Delorie <dj@redhat.com>
9795
9796 * Makefile.in (version.c): make version checking more robust
9797 * splash.cc (load_dialog): handle case where there's no version
9798
8507f105
DD
97992000-08-07 DJ Delorie <dj@redhat.com>
9800
9801 * (all): add cvsid tags
9802 * Makefile.in: generate version.c from ChangeLog, add splash.o
9803 * splash.o: new
9804 * res.rc: add splash screen
88bcaf07 9805
f5d0464b
DD
98062000-08-02 DJ Delorie <dj@redhat.com>
9807
4e8ff53f
DD
9808 * net.cc: remove proxy password code
9809 * res.rc: remove proxy user/pass from net, add auth dialogs
9810 * netio.cc,h: add sys/proxy auth methods
9811 * nio-ie5: use them, check for http status codes
9812 * state.h: add system authorization
9813
f5d0464b
DD
9814 * concat.cc (concat): canonicalize x:// to x:/ (exception to ://
9815 meaning an url)
9816
76cbfa85
DD
98172000-08-02 Norman Vine <nhv@yahoo,com>
9818
9819 * msg.cc (mbox): added MB_TOPMOST to MessageBox type flags
9820
e92c4436
DD
98212000-08-01 DJ Delorie <dj@redhat.com>
9822
bf74c544
DD
9823 * postinstall.cc (each): don't rename files we ignore
9824 (do_postinstall): set CYGWINROOT to root_dir, chdir there
9825
e92c4436
DD
9826 * desktop.cc: have /etc/profile call ~/.profile and ~/.bashrc
9827
a6100861
DD
98282000-07-31 DJ Delorie <dj@redhat.com>
9829
9830 * desktop.cc: reverse PATH so /usr/bin precedes /bin
9831
b11b49f3
DD
98322000-07-18 DJ Delorie <dj@redhat.com>
9833
a99bdfd8
DD
9834 * autoload.c: new, autoload dlls that might not be available.
9835 * Makefile.in (OBJS): add autoload.o
9836
9837 * res.rc: rewrite root options (text/binary, system/user) to be
9838 more obvious.
9839
b5b282c4
DD
9840 * site.cc (get_site_list): trim displayed URL, sort by domain
9841
9842 * net.cc (do_net): make IE5 default to checked, for now
9843
b11b49f3
DD
9844 * choose.cc (do_choose): sort packages correctly
9845 * ini.cc (do_ini): handle parse errors more gracefully
9846 (yyerror): ditto
9847 (fprintf): line buffer output
b5b282c4 9848 (do_ini): if we can't load setup.ini, go back to the site list.
b11b49f3
DD
9849 * ini.h: add "unknown" trust level
9850 * inilex.l: absorb unknown trust levels and key/value pairs,
9851 add line number logic
9852 * iniparse.y: handle parse errors more gracefully.
9853 * install.cc: skip packages with no valid install entry
9854
1fd6d0a2
DD
98552000-07-17 DJ Delorie <dj@cygnus.com>
9856
9857 * coding standards fixups, many files
9858 * mkdir.cc: warn about deletions *before* deleting them
9859
ed3e8b9b
DD
98602000-07-17 Jeff Juliano <juliano@cs.unc.edu>
9861
9862 * res.rc (IDD_OTHER_URL): reorder to give default focus to entry
9863
9864 * other.cc (dialog_cmd): save download site URL
9865 * site.cc (get_root_dir): new
9866 (save_mirror_site): new
9867 (dialog_cmd): save download site URL
9868 (get_site_list): make list big enough to add prev site
9869 (get_initial_list_idx): new, read last-used URL from file and
9870 append it to site_list
9871 (do_site): call get_initial_list_idx
9872
9873 * concat.cc (concat): avoid segfault when first parm is null
88bcaf07 9874
f57c332f
DD
98752000-07-13 DJ Delorie <dj@cygnus.com>
9876
9877 * postinstall.cc: new
9878 * Makefile.in: add postinstall.o
9879 * concat.h: add backslash ()
9880 * concat.cc: ditto
9881 * desktop.cc (etc_profile): don't do postinstall
9882 (backslash): moved to concat.cc
9883 (uexists): new
9884 (make_postinstall_script): run directly
9885 (do_desktop): chain to do_postinstall
9886 * dialog.h: add exit_msg, do_postinstall
9887 * download.cc: use exit_msg
9888 * install.cc: ditto
9889 * main.cc: add postinstall, exit_msg
9890 * resource.h: add postinstall
d6cda811 9891 * README: add more to-do items
f57c332f 9892
3a8e3956
DD
98932000-07-12 DJ Delorie <dj@cygnus.com>
9894
9895 * desktop.cc: add /etc/postinstall/ support
1a18aed7 9896 * install.cc: add more "standard" directories
3a8e3956 9897
e0c3d906
DD
98982000-07-11 DJ Delorie <dj@cygnus.com>
9899
9900 * desktop.cc: create /etc/profile
ad09bcd9
DD
9901 * desktop.cc: fix include syntax
9902 * Makefile.in: add auto-dependencies
24e259bb
DD
9903 * root.cc: support system vs user
9904 * desktop.cc: ditto
9905 * mount.h: ditto
9906 * mount.cc: ditto
9907 * install.cc: ditto
9908 * res.rc: ditto
9909 * resource.h: ditto
9910 * state.h: ditto
84d58d4c 9911 * desktop.cc: make sure we use backslashes, not slashes.
bf1d5889
DD
9912 * desktop.cc: don't set PATH in cygwin.bat, create /etc/passwd
9913 * geturl.cc: change math for percentage to avoid overflow
9914 * install.cc: ditto
9915 * download.cc: post "download complete" message.
9916 * root.cc: pre-fill in defaults if needed, don't start
9917 browse at root_dir unless it's set.
a3f48e18 9918 * desktop.cc: quote $PATH in case it has spaces in it
88bcaf07 9919
904d24fe
DD
99202000-07-10 DJ Delorie <dj@cygnus.com>
9921
9922 * Makefile.in: add desktop.o and mklink2.o
9923 * dialog.h: add do_desktop
9924 * install.cc: create standard directories, call do_desktop
9925 * res.rc: add cygwin.ico as a file also
9926 * desktop.cc: new, do shortcuts, batch files, and icons
9927 * mklink2.c: new, for COM
1ab805b8 9928 * README: update to-do list
904d24fe 9929
04d6e06b
DD
99302000-07-10 DJ Delorie <dj@cygnus.com>
9931
9932 * ini.cc (do_ini): don't worry about timestamps if we're not
88bcaf07 9933 actually installing.
04d6e06b 9934
5601a13d
DD
99352000-07-09 DJ Delorie <dj@cygnus.com>
9936
9937 * Makefile.in: add -I$(srcdir) for ini.h
9938
23c9e63c
DD
99392000-07-06 DJ Delorie <dj@cygnus.com>
9940
9941 * Replace everything with a new GUI version
9942 * zlib/gzio.c: add gzctell() for progress displays
9943
99442000-06-22 DJ Delorie <dj@cygnus.com>
9945
9946 * setup.c (tarx): re-add call to write_pkg()
9947
aa32874b
DD
99482000-06-07 DJ Delorie <dj@cygnus.com>
9949
9950 * cygcalls.c: new, call cygwin1.dll functions directly
9951 * cygcalls.h: header for same
9952 * Makefile.in: add cygcalls.[ch], remove mount/cygpath/umount
9953 exes, fix cinstall.rc dependencies.
9954 * path.c: remove unneeded code
9955 * setup.c: use cygcalls instead of xcreate_process.
9956 uncompress embedded files with zlib
9957 add "-d" for "download only"
9958 add "-h" for help
9959 postpone mount changes until very end
9960 add download progress indicators
9961 pack multi-column listings more
9962 auto-delete temp files
9963 customize banner message according to options
9964 prompt user for text/binary mounts
9965 add warnings about empty setup directory, root installs, etc
9966
99d1bf2d
DD
99672000-05-24 DJ Delorie <dj@cygnus.com>
9968
9969 * tar.c: New file; built-in tar using zlib.
9970 * tar.h: New file; header for same.
9971 * ctar.c: New file; test program for same.
9972 * Makefile.in: add built-in tar, remove tar.exe and gzip.exe
58b12a06
MB
9973 * path.c (pathcat): convert slashes and canonicalize, instead of
9974 aborting
99d1bf2d
DD
9975 * setup.c (tarx): add support for built-in tar
9976 (main): accept unix-style slashes, check root dir for drive letters,
58b12a06
MB
9977 warn about installing in /, make sure cwd is empty for internet
9978 installs, defer mounts to end of install, support built-in tar.
99d1bf2d 9979
55650749
CF
9980Fri May 19 23:44:37 2000 Christopher Faylor <cgf@cygnus.com>
9981
9982 Fix compiler warnings throughout.
9983 * pkg.c (init_pkgs): Make static 'stuff' global_pkgstuff for use in
9984 get_pkg_stuff.
9985 * setup.c: Make 'root' global.
9986 (istargz): Return pointer to "stem" of matched .tar.gz file.
9987 (tarx): Special case cygwin-20000301 to == cygwin-1.1.0.tar.gz. Remove
9988 bogus check_for_installed check.
9989 (recurse_dirs): Add preliminary support for .bat file execution.
9990 (create_uninstall): Eliminate unneeded parameter.
9991 (do_start_menu): Ditto.
9992 (mkmount): Ditto.
9993 (get_pkg_stuff): Ditto. Check for currently installed cygwin by
9994 scanning for the version number. Eliminate unneeded argument to
9995 create_uninstall.
9996 (getdownloadsource): Add 'name' to list of names rather than url.
9997 (main): Eliminate unneeded argument in get_pkg_stuff. Eliminate
9998 unneeded argument in mkmount and do_start_menu.
9999
f4dda8f0
DD
100002000-05-18 DJ Delorie <dj@cygnus.com>
10001
10002 * setup.c (optionprompt): allow multi-column, clean up message
10003 about more options, be more robust about user input.
10004 (getdownloadsource): make the mirror URL a macro.
10005 (main): do mounts after done prompting user.
10006
62844d84
CF
10007Tue May 2 00:56:41 2000 Christopher Faylor <cgf@cygnus.com>
10008
10009 * setup.c (cleanup): Inverse order of deletion stands a better chance
10010 of deleting cygpath.exe. Still seems to suffer from occasional races,
10011 though.
10012 (cleanup_on_signal): Perform convoluted dance to accomodate win95 and
10013 w2k.
10014 (output_file): Defend against an unlikely handle leak.
10015 (main): Don't set up signal handling until we have something special to
10016 do.
10017
ad6749c8
CF
10018Mon May 1 17:56:32 2000 Christopher Faylor <cgf@cygnus.com>
10019
10020 * path.c (kill_cygpath): Delete function.
10021 (exit_cygpath): Make more defensive so that it can be called at any
10022 time.
10023 (cygpath_pipe): Don't set up signal here. Do it in main().
10024 * setup.c (istargz): New function.
10025 (recurse_dirs): Look for *.gz pattern rather than *tar.gz since *tar.gz
10026 inexplicably fails on samba mounted partitions. Use istargz to match
10027 tar.gz tail.
10028 (processdirlisting) Use istargz to match tar.gz tail.
10029 (cleanup): Renamed from filedel.
10030 (cleanup_on_signal): New function. Called on CTRL-C.
10031 (main): Record handle of main thread so that it can be suspended when
10032 CTRL-C occurs. Set up cleanup_on_signal signal handler.
10033
460cf7b6
CF
10034Mon May 1 11:05:07 2000 Christopher Faylor <cgf@cygnus.com>
10035
10036 * setup.c (do_start_menu): Don't concatenate paths to already built
10037 paths.
10038
9e76799c
CF
10039Sun Apr 30 22:37:34 2000 Christopher Faylor <cgf@cygnus.com>
10040
10041 * path.c (exit_cygpath): Wait for subprocess to exit before returning.
10042 (cygpath_pipe): Don't call exit_cygpath. Let main atexit routine do
10043 that.
10044 * pkg.c (init_pkgs): Accept root argument. Make registry key "cygwin
10045 root"-specific.
10046 * setup.c (filedel): Call exit_cygpath here so that we can be assured
10047 that cygpath subprocess has died. This allows us to delete cygpath.exe
10048 and cygwin1.dll.
10049 (optionprompt): Initialize response to -1 so that second screen of
10050 mirrors will appear.
10051 (get_pkg_stuff): Don't attempt to use HKCLU. Pass root to init_pkgs.
10052 * setup.h: Reflect init_pkgs prototype change.
10053
2cf65e6e
CF
10054Sat Apr 29 23:53:30 2000 Christopher Faylor <cgf@cygnus.com>
10055
10056 * pkg.c (init_pkgs): Accept an argument to control what root registry
10057 key should be used.
10058 * setup.c (get_pkg_stuff): Use HKCLU registry key if default fails.
10059 * setup.h: Reflect init_pkgs prototype change.
10060
10061Sat Apr 29 23:27:14 2000 Christopher Faylor <cgf@cygnus.com>
10062
10063 * error.c (winerror): Respond to gcc warning.
10064 * path.c (cygpath_pipe): Ditto.
10065 * setup.c (filedel): Call sa_cleanup on deleteme.
10066 (create_shortcut): Coerce argument to eliminate compiler warning.
10067 (tarx): Use installed version of cygwin1.dll, overriding tar file name.
10068 (refmatches): New function. Tests if ref is contained in a list of
10069 packages to install.
10070 (filematches): New function. Tests if filename matches one of a list
10071 of packages to install.
10072 (recurse_dirs): Accept list of packages to install. Generalize tar.gz
10073 test to accomodate _tar.gz.
10074 (prompt): Ensure that stdout is flushed prior to asking for input.
10075 (findhref): Initialize variables to quiet a compiler warning.
10076 (processdirlisting): Accept list of packages to install. Special case
10077 cygwin tar file version number.
10078 (downloaddir): Accept list of packages to install.
10079 (downloadfrom): Ditto.
10080 (create_uninstall): Eliminate unneeded variables. Quote arguments to
10081 regtool.
10082 (do_start_menu): Don't create uninstall bat file if updating or user
10083 specified a list of packages.
10084 (mkmount): Eliminate unneeded variables.
10085 (get_pkg_stuff): New function. Checks for previous unversioned
10086 installation.
10087 (main): Accept -u and -f options and package names on the command line.
10088 Use get_pkg_stuff to initialize package information. Umount /etc.
10089 Call recurse_dirs and downloadfrom with list of package to install.
10090 Ensure that all /usr/local directories are created. Output
10091 installation time to setup.log.
10092 * setup.h: Add some prototypes.
10093 * xsystem.c (xcreate_process): Eliminate unneeded variable.
10094
4cf88dd9
CF
10095Sat Apr 29 12:43:08 2000 Christopher Faylor <cgf@cygnus.com>
10096
10097 * setup.c (optionprompt): Don't overlap display of already seen options
10098 on next page.
10099 (geturl): Print name of site which we're connecting to rather than "ftp
10100 site".
10101 (processdirlisting): Avoid URLs that contain a /. or ./ . Is this
10102 test too simplistic?
10103 (do_start_menu): Use pathcat to build path to <root>\bin to avoid
10104 problems when user chooses x:\ as their root.
10105 (main): For now, default to "non-update" mode. Allow -u option to
10106 signify an update.
10107
36591a07
CF
10108Sat Apr 29 00:26:06 2000 Christopher Faylor <cgf@cygnus.com>
10109
10110 * pkg.c: New file.
10111 * setup.c (tarx): Skip already installed or older packages. Report
10112 when a package has been updated.
10113 (processdirlisting): Skip already installed or older packages.
10114 (main): Detect -f option for forced installation. Initialize pkg stuff
10115 if appropriate.
10116 * setup.h: Add pkg definitions.
10117
c298ea4a
CF
10118Thu Apr 27 14:21:30 2000 Christopher Faylor <cgf@cygnus.com>
10119
10120 * setup.c (findhref): Return NULL on empty string. Eat any trailing
10121 ";something".
10122 (processdirlisting): Attempt to limit recursively processing the same
10123 directory.
10124
f4cafa7e
CF
10125Thu Apr 27 11:42:23 2000 Christopher Faylor <cgf@cygnus.com>
10126
10127 * setup.c (filedel): New function.
10128 (output_file): Keep track of files extracted from setup.exe for
10129 subsequent deletion.
10130 (tarx): Close process handle of child tar process or suffer handle
10131 leak.
10132 (getdownloadsource): Close mirror file so that it can be unlinked.
10133 (processdirlisting): Return total number of files extracted.
10134 (main): Initialize array of files to delete. Ensure that files are
10135 closed on exit. Make the directory that setup.exe is started from ==
10136 the directory where temporary files are placed. Issue an error if no
10137 files were found to download.
10138 * xsystem.c (xcreate_process): Close the thread handle. Close the
10139 process handle if we waited for it to exit.
10140
cd475210
CF
10141Thu Apr 27 09:54:19 2000 Christopher Faylor <cgf@cygnus.com>
10142
10143 * setup.c (main): Change version number output.
10144
7dff5e71
CF
10145Thu Apr 27 09:23:17 2000 Christopher Faylor <cgf@cygnus.com>
10146
10147 * setup.c (tarx): Use full path name to tar executable.
10148 (main): Build full pathname to tar executable. Create /usr/local/etc
10149 by default.
10150
99437fdb
CF
10151Wed Apr 26 22:16:57 2000 Christopher Faylor <cgf@cygnus.com>
10152
10153 * setup.c (findhref): Change method for scanning for href= to choose
10154 the last one on the line. This is still not foolproof and probably
10155 will need to be changed eventually. Don't abort if no "size" field is
10156 evident.
10157 (processdirlisting): Fix boolean algebra.
10158
0f562d55
CF
10159Wed Apr 26 01:10:39 2000 Christopher Faylor <cgf@cygnus.com>
10160
10161 * main.c (tarx): Add some code for future task of unmounting
10162 directories encountered in tar file.
10163
4356382d
CF
10164Sat Apr 22 16:37:03 2000 Christopher Faylor <cgf@cygnus.com>
10165
10166 * setup.c (findhref): Decode file size, when appropriate.
10167 (needfile): New function. Returns 1 when file should be
10168 downloaded.
10169 (processdirlisting): Always download if file size does not
10170 match. Prompt when download fails for some reason.
10171 (getdownloadsource): Accomodate findhref argument changes.
10172
6ab1ce6c
CF
10173Sat Apr 22 15:13:42 2000 Christopher Faylor <cgf@cygnus.com>
10174
10175 Throughout, use global session handle rather than reinitializing for
10176 each connect. Don't pass session as an argument to setup.c functions.
10177 * setup.c (geturl): Only issue "Connecting to.." message when using
10178 http or first time for ftp since subsequent connections will be fast.
10179 (processdirlisting): Allocate space for "N" when user has specified
10180 "N"ever option so that it can be subsequently freed.
10181 (main): Abort if we can't get the list of mirrors.
10182
37ee316b
CF
10183Thu Apr 20 16:41:42 2000 Christopher Faylor <cgf@cygnus.com>
10184
10185 * setup.c (main): Umount /bin and /lib.
10186
a59fb4fa
CF
10187Wed Apr 19 13:34:44 2000 Christopher Faylor <cgf@cygnus.com>
10188
10189 * setup.c (main): Create an empty /var/run/utmp.
10190
75f4b861
CF
10191Tue Apr 18 19:16:56 2000 Christopher Faylor <cgf@cygnus.com>
10192
10193 * Makefile.in: Add umount to list of files to include in setup.exe.
10194 * setup.c (xumount): New function for unmounting directories.
10195 (main): Unmount /usr.
10196 (mkmount): Unmount "unix directory" before trying to figure out where
10197 to create the directory.
10198
d4a66789
CF
10199Tue Apr 18 17:28:55 2000 Christopher Faylor <cgf@cygnus.com>
10200
10201 * setup.c (mkmount): Use xcreate_process to start mount process,
10202 avoiding the shell.
10203 (main): Don't do buffering on stdout or prompts won't be displayed
10204 correctly if running in a cygwin shell with CYGWIN=tty.
10205
a6c3982d
CF
10206Tue Apr 18 15:35:19 2000 Christopher Faylor <cgf@cygnus.com>
10207
10208 * setup.c (main): Remove the CYGWIN environment variable before
10209 starting any cygwin programs.
10210
0ffd5e3b
CF
10211Mon Apr 17 19:20:52 2000 Vadim Egorov <egorovv@mailandnews.com>
10212
10213 * setup.c (geturl): Use alternative method for finding filename part of
10214 a URL.
10215 (processdirlisting): Accomodate strange output from non-MS ftp proxy.
10216 (downloaddir): Unlink file containing dir listing.
10217 (downloadfrom): Ditto.
10218
3e54bcf9
CF
10219Mon Apr 17 00:00:49 2000 Christopher Faylor <cgf@cygnus.com>
10220
10221 * setup.c (main): Disallow running setup.exe from the "root".
10222
005b73c4
CF
10223Sun Apr 16 18:50:58 2000 Christopher Faylor <cgf@cygnus.com>
10224
2cf65e6e 10225 Use "warning" function, where appropriate, to output warnings.
005b73c4
CF
10226 * setup.c (warning): New function -- outputs warning to console and log
10227 file.
10228 (tarx): Fix index used to reset file protection.
10229 (main): Open the log file earlier so that more stuff can be sent to it.
10230
36dc5fc8
CF
10231Sat Apr 15 20:05:33 2000 Christopher Faylor <cgf@cygnus.com>
10232
10233 * setup.c (processdirlisting): Make "N" option a little less aggressive.
10234
c73320de
CF
10235Fri Apr 14 11:11:29 2000 Christopher Faylor <cgf@cygnus.com>
10236
10237 * setup.c (tarx): Wait to after tar has completed to reset protections
10238 or suffer races with tar process.
10239
68cdfc92
CF
10240Thu Apr 13 12:51:19 2000 Christopher Faylor <cgf@cygnus.com>
10241
10242 * Makefile.in: Eliminate duplicate -nostdinc from CFLAGS.
10243 * setup.c (create_uninstall): Create the uninstall .bat file in the
10244 "root" so that we can remove the /bin directory. Add bin\cygwin.bat to
10245 list of files to be deleted. Fix directory detection for determining
10246 when to use 'rmdir'.
10247 (do_start_menu): Add /usr/local/bin to the path.
10248 (main): Add slop to files.array allocation so that we don't have to
10249 worry about reallocating the array when it grows too large when doing
10250 some trivial "pushes". Add /tmp and /usr/local/{bin,lib} to list of
10251 files.
10252
35d18861
CF
10253Thu Apr 13 01:59:44 2000 Christopher Faylor <cgf@cygnus.com>
10254
10255 * setup.c (processdirlisting): Fix handling of "A" for "A"lways
10256 download.
10257
20904de1
CF
10258Thu Apr 13 01:11:45 2000 Christopher Faylor <cgf@cygnus.com>
10259
10260 * path.c (kill_cygpath): New cleanup function.
10261 (exit_cygpath): New cleanup function.
10262 (cygpath_pipe): New function. Sets up cygpath in the background for
10263 translating filenames.
10264 (pathcvt): Use background cygpath for file translation.
10265 * setup.c (tarx): New function. Called to extract tar files, capture
10266 logging output, and translate it to Windows format.
10267 (recurse_dirs): Use 'tarx' function to extract files.
10268 (create_uninstall): Use file list built up by tarx rather than reading
10269 the log file.
10270 (mkmount): Add ability to mount root.
10271 (main): Track elapsed install time. Mount root.
10272 * starry.h: Add index field to strarry for tracking of tarx's usage of
10273 this structure.
10274 * xsystem.c (xcreate_process): Return proces handle when not waiting.
10275
c1246750
CF
10276Mon Apr 10 22:44:56 2000 Christopher Faylor <cgf@cygnus.com>
10277
10278 * path.c: New file.
10279 (pathfp): New function. Preliminary work for new -f cygpath
10280 functionality.
10281 * Makefile.in: Add new file.
10282 (pathcvt): Move to new file.
10283 (dtoupath): Ditto.
10284 (utodpath): Ditto.
10285 (pathcat): Ditto.
10286 * setup.c (processdirlisting): Always open file in text mode.
10287 (create_uninstall): Ditto.
10288 (getdownloadsource): Ditto.
10289 (main): Ditto.
10290
4b40edd0
CF
10291Mon Apr 10 20:33:40 2000 Christopher Faylor <cgf@cygnus.com>
10292
10293 * xsystem.c: New file.
10294 * Makefile.in: Accomodate new file.
10295 * setup.c (xsystem): Move to new file.
10296 (recurse_dirs): Accept handle to output log file. Don't use ">"
10297 redirection to trap tar output. Use supplied handle instead.
10298 (create_uninstall): Accept FILE pointer to opened log file. Don't
10299 unlink log file here.
10300 (do_start_menu): Accept FILE pointer to pass to create_uninstall.
10301 (main): Open log file here and pass it to various functions. Unlink
10302 when done.
10303
6f8e3b45
CF
10304Mon Apr 10 17:15:52 2000 Christopher Faylor <cgf@cygnus.com>
10305
10306 Change occurrences of .usr.bin to .bin throughout.
10307 * setup.c (geturl): Increase number of retries to 20. Let user know
10308 what's going on during long connects.
10309 (processdirlisting): Accept "A"lways and "N"ever as update options.
10310 (create_uninstall): Load cygwin1.dll from the current directory rather
10311 than \bin.
10312 (main): Add some expository text.
10313
2a907b70
CF
10314Sun Apr 9 20:59:15 2000 Christopher Faylor <cgf@cygnus.com>
10315
10316 * Makefile.in: Change method for compressing cygwin1.dll to avoid
10317 creating a cygwin1.dll in the current directory. Ensure the addition
10318 of -nostdinc to MINGW_CFLAGS.
10319
c4285a3c
CF
10320Sun Apr 9 02:15:47 2000 Christopher Faylor <cgf@cygnus.com>
10321
10322 * Makefile.in: Augment clean target.
10323
ea615d51
RP
10324Fri Apr 7 17:04:02 Ron Parker <rdparker@sourceware.cygnus.com>
10325
10326 * README: Added info about non-working mingw implementation
c1246750 10327 * gzip.exe.gz: Replace with a version from the same build as the other
ea615d51 10328 tools.
c1246750 10329 * tar.exe.gz: Replace with a version from the same build as the other
ea615d51 10330 tools.
c1246750 10331 * mount.exe.gz: Add to repository until, mingw can build setup.
ea615d51
RP
10332 * cygpath.exe.gz: ditto
10333 * cygwin1.dll.gz: ditto
c1246750
CF
10334 * setup.c: Overwrite /bin and /lib mounts. Generate working shortcut
10335 for Win9x. Display only a screenfull of options at a time. Call all
10336 tools with an absolute path.
10337 * setup.dsp: Restore the carriage returns, MS Developer Studio needs
10338 them.
ea615d51
RP
10339 * setup.dsw: ditto
10340 * zlib.dsw: ditto
10341
51954e74
CF
10342Thu Apr 6 19:15:27 2000 Christopher Faylor <cgf@cygnus.com>
10343
c1246750
CF
10344 * Makefile.in: Add "-nostdinc" to regular CFLAGS. Add target to grab
10345 cygwin1.dll from ../cygwin subdirectory.
51954e74
CF
10346 * gzip.exe.gz: Update.
10347 * tar.exe.gz: Update.
10348
7b777418
CF
10349Wed Apr 5 10:52:08 2000 Christopher Faylor <cgf@cygnus.com>
10350
10351 * Makefile.in: Use ZLIB variable as a target.
10352
4306b490
CF
10353Sat Apr 1 22:49:09 2000 Christopher Faylor <cgf@cygnus.com>
10354
5e7eb909
CF
10355 * Makefile.in: Eliminate traces of cygwinisms. Don't link with
10356 libmsvcrt.a. It's unneeded. Build .rc file on the fly from various
10357 sources.
4306b490
CF
10358 * configure.in: Locate correct objcopy.
10359 * configure: Regenerate.
10360
739457f4
CF
10361Sat Apr 1 20:48:09 2000 Christopher Faylor <cgf@cygnus.com>
10362
10363 * Makefile.in: New file.
10364 * configure.in: New file.
10365 * configure: New file.
10366 * zlib/Makefile.am: New file.
10367 * zlib/configure.in: New file.
10368 * zlib/aclocal.m4: New file.
10369 * zlib/acinclude.m4: New file.
10370 * zlib/configure: Regenerate from configure.in.
10371 * zlib/Makefile.in: Regenerate from Makefile.am
8507f105
DD
10372
10373%%% $Id$
10374$Revision$
This page took 1.372908 seconds and 5 git commands to generate.