]> cygwin.com Git - cygwin-apps/setup.git/blame - ChangeLog
* configure.ac: Rename from configure.in.
[cygwin-apps/setup.git] / ChangeLog
CommitLineData
9b98ba23
CF
12013-02-17 Christopher Faylor <me.cygwin2013@cgf.cx>
2
3 * configure.ac: Rename from configure.in.
4 * configure.in: Delete.
5 * libgetopt++/configure.ac: Rename from configure.in.
6 * libgetopt++/configure.in: Delete.
7 * Makefile.am: Remove ill-advised iniparse.hh change.
8 * libgetopt++/Makefile.am: Use "modern" AM_CPPFLAGS rather than INCLUDES.
9 * inilex.ll: Add autodep token recognition.
10 * iniparse.yy: Handle autodep.
11 * IniDBBuilder.h (autodep): Define for base class.
12 * IniDBBuilderPackage.cc (IniDBBuilderPackage::autodep): Define.
13 * IniDBBuilderPackage.h (IniDBBuilderPackage::autodep): Declare.
14
01d90158
CF
152013-02-17 Christopher Faylor <me.cygwin2013@cgf.cx>
16
17 * Makefile.am: Add regex.c to list of sources.
18 (iniparse.hh): Rename if a iniparse.h has been created.
19 * regex/config.h: New file.
20 * regex/re_comp.h: New file.
21 * regex/regcomp.c: New file.
22 * regex/regex.c: New file.
23 * regex/regex.h: New file.
24 * regex/regex_internal.c: New file.
25 * regex/regex_internal.h: New file.
26 * regex/regexec.c: New file.
27 * processlist.cc (Process::isModuleLoadedInProcess): Avoid compiler
28 warning by changing 'i' to unsigned.
29
6b9b1c33
JT
302013-01-25 Achim Gratz <Stromeko@nexgo.de>
31 * README (HOW TO BUILD): Cross compiler package is now named
32 mingw-gcc-g++, also mention package upx as an optional dependency.
33
ec366f61
JT
342013-02-01 Jon TURNEY <jon.turney@dronecode.org.uk>
35
36 * install.cc ( _custom_MessageBox): Remove custom message box.
37 (FileInuseDlgProc): Add file-in-use dialog box.
38 (installOne): Use processlist to list processes using a file, and
39 offer to kill them with the file-in-use dialog.
40 * res.rc (IDD_FILE_INUSE) : New dialog.
41 * resource.h (IDD_FILE_INUSE, IDC_FILE_INUSE_EDIT)
42 (IDC_FILE_INUSE_MSG, IDC_FILE_INUSE_HELP): Define corresponding
43 resource ID numbers.
44 * processlist.h: New file.
45 * processlist.cc: New file.
46 * Makefile.am (setup_LDADD): Add -lpsapi.
47 (setup_SOURCES): Add new files.
48
f2952a6c
JT
492013-02-01 Jon TURNEY <jon.turney@dronecode.org.uk>
50
51 * script.cc (::run, Script::run): Move the formatting of the command
52 line used for postinstall script running out to Script::run. Move the
53 logging of the command and it's output into ::run.
54 * script.h: Add ::run() prototype.
55
443b9db6
JT
562013-01-17 Jon TURNEY <jon.turney@dronecode.org.uk>
57
58 * configure.in: Require automake 1.12.
59 * Makefile.am (BUILT_SOURCES): Update iniparse.h to iniparse.hh.
60 * iniparse.yy: Ditto.
61 * inilex.ll: Ditto.
62
c0e6cf04
JT
632013-01-16 Jon TURNEY <jon.turney@dronecode.org.uk>
64
65 * threebar.cc (ThreeBarProgressPage::SetBar2): Change from long int to
66 long long int to handle more than 2GB of data.
67 * threebar.h (ThreeBarProgressPage::SetBar2): Update prototype.
68 * install.cc: Change md5sum and install counters to long long int.
69 * geturl.cc: Change download counter to long long int.
70 * geturl.h: Ditto.
71
8b57c909
YS
722012-11-08 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
73
74 * Makefile.am (EXTRA_DIST): Remove libmd5-rfc files.
75 (setup_SOURCES): Ditto.
76 * download.cc: Remove unused include.
77 * csu_util/MD5Sum.cc: Port from libmd5-rfc to libgcrypt.
78 * csu_util/MD5Sum.h: Ditto.
79 * libmd5-rfc/*: Remove.
80
a17ea4ab
YS
812012-10-19 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
82
83 * bootstrap.sh: Add support for i686-w64-mingw32 toolchain.
84 Remove support for gcc-3 -mno-cygwin.
85
0963fbe7
CF
862012-09-12 Christopher Faylor <me.cygwin2012@cgf.cx>
87
88 * README: Modernize.
89 * bootstrap.sh: Remove outdated options from configure. Use mingw
90 compiler.
91 * configure.in: Remove AM_MAINTAINER_MODE.
92
af67048a
YS
932012-09-04 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
94
95 Fix build with mingw-w64 headers.
96 * autoload.c: Define DECLSPEC_IMPORT for mingw-w64 headers.
97 * filemanip.h: Include <sys/types.h> to fix missing mode_t typedef
98 error with mingw-w64 headers.
99 * gpg-packet.cc: Include "win32.h" to avoid macro redefinition
100 errors with mingw-w64 headers.
101 (ARRAYSIZE): Do not redefine.
102 * main.cc (_argv): Declare if using mingw-w64 headers.
103 (WinMain): Move up _argv definition to before it is first used.
104 * ntdll.h: Include PSDK headers with mingw-w64 instead of DDK.
105 * package_message.h: Include "win32.h" instead of <windows.h>.
106 * propsheet.cc (PROPSHEETHEADER_V1_SIZE): Do not redefine.
107 * win32.h: Include <sys/types.h> to fix missing mode_t typedef
108 error with mingw-w64 headers.
109 Define DECLSPEC_IMPORT for mingw-w64 headers.
110
e08abe3f
YS
1112012-08-30 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
112
113 First step towards X86-64 compatibility.
114 * archive_tar.cc (archive_tar::next_file_name): Fix sscanf formats
115 for 64-bit size_t.
116 * choose.cc (ChooserPage::OnMouseWheel): Fix return type.
117 * choose.h (ChooserPage::OnMouseWheel): Ditto.
118 * filemanip.cc (nt_wfopen): Fix argument cast for _open_osfhandle.
119 * netio.cc (auth_proc): Fix return type.
120 * proppage.cc (PropertyPage::FirstDialogProcReflector): Fix return type.
121 Use SetWindowLongPtr and DWLP_* instead of SetWindowLong and DWL_*.
122 (PropertyPage::DialogProcReflector): Ditto.
123 (PropertyPage::DialogProc): Ditto.
124 (PropertyPage::OnMouseWheel): Ditto.
125 * proppage.h (PropertyPage::FirstDialogProcReflector): Fix return type.
126 (PropertyPage::DialogProcReflector): Ditto.
127 (PropertyPage::DialogProc): Ditto.
128 (PropertyPage::OnMouseWheel): Ditto.
129 * site.cc (drop_proc): Fix return type.
130 * window.cc (Window::FirstWindowProcReflector): Use GWLP_* with
131 SetWindowLongPtr calls.
132 (Window::WindowProcReflector): Ditto.
133
c0e55e84
YS
1342012-08-30 Jacek Caban <jacek@codeweavers.com>
135 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
136
137 * main.cc: Remove CINTERFACE define.
138 (main_display): Use C++ syntax for COM.
139 * mklink2.cc: Remove CINTERFACE define.
140 (make_link_2): Use C++ syntax for COM.
141
6c4d8cf3
CF
1422012-08-21 Christopher Faylor <me.cygwin2012@cgf.cx>
143
144 * setup.exe.manifest: Reorder "supportedOS" entries and add entry for
145 Windows 8.
146
5db899f0
CF
1472012-06-03 Christopher Faylor <me.cygwin2012@cgf.cx>
148
149 * main.cc: Remove __CYGWIN__ ifdefs.
150 (main): Ditto.
151
e07b6f3d
YS
1522012-06-01 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
153
154 * Makefile.am (setup_version.c): Respect silent rules.
155 (.rc.o): Ditto.
156 * configure.in: Enable silent rules with automake-1.11.
157
490f6998
CF
1582012-04-29 Christopher Faylor <me.cygwin2012@cgf.cx>
159
160 * window.cc: Remove trailing whitespace.
161
27f40a12
CF
1622012-04-28 Christopher Faylor <me.cygwin2012@cgf.cx>
163
164 * io_stream_file.cc (io_stream_file::exists): Properly treat return
165 from GetFileAttributesW as a bit field so that a directory will not be
166 seen as "existing".
167
7005f56d
CV
1682012-04-26 Corinna Vinschen <corinna@vinschen.de>
169
170 * script.cc (run): Add quotes around file to allow spaces in path.
171 (Script::run): Add aforementioned quotes to log output as well.
172
42c2254e
CV
1732012-03-08 Corinna Vinschen <corinna@vinschen.de>
174
175 * win32.h (FACTOR): Define, use correct value.
176 (NSPERSEC): Ditto.
177 * archive_tar.cc: Drop FACTOR and NSPERSEC definitions here.
178 * io_stream_cygfile.cc: Ditto.
179 * io_stream_file.cc: Ditto.
180
d285d991
CV
1812012-02-29 Corinna Vinschen <corinna@vinschen.de>
182
183 * win32.cc (NTSecurity::GetPosixPerms): Don't allow write permissions
184 in inheritable default permission ACEs for group and other if the
185 directory is an S_ISVTX dir.
186
4a8be6e0
CF
1872012-02-24 Christopher Faylor <me.cygwin2012@cgf.cx>
188
189 * bootstrap.sh: Don't assume that libgetopt++ exists in source directory.
190 * configure.in: Remove some old options.
191 * Makefile.am: Ditto.
192 * libgetopt++/Makefile.am: Ditto.
193 * libgetopt++/configure.in: Ditto.
194
befc9dd8
CV
1952012-02-24 Corinna Vinschen <corinna@vinschen.de>
196
197 * main.cc (WinMain): Move call to nt_sec.setDefaultSecurity here so
198 it's called earlier in the process. This avoids spurious error
199 messages in --help output.
200
34d534a6
JT
2012012-02-23 Jon TURNEY <jon.turney@dronecode.org.uk>
202
befc9dd8
CV
203 * main.cc (main_display): Move --help output from here ...
204 (WinMain): ... to here, so we don't logging of the current directory
205 and any errors from constructing a UserSettings object preceding the
206 --help output.
34d534a6 207
7c05cfce
JT
2082011-05-30 SZAVAI Gyula <szgyg@ludens.elte.hu>
209
befc9dd8
CV
210 * site.cc (SiteSetting::SiteSetting): Handle multiple
211 --site options.
212 * crypto.cc (verify_ini_file_sig): Handle multiple
213 --pubkey and --sexpr-pubkey options.
214 * package_meta.cc (packagemeta::isManuallyWanted): Handle
215 multiple --packages and --categories options.
7c05cfce 216
a323e5c6
CF
2172012-02-22 Christopher Faylor <me.cygwin2012@cgf.cx>
218
219 * res.rc: Change copyright notice to -2012.
220
c6bf266d
CV
2212012-02-19 Corinna Vinschen <corinna@vinschen.de>
222
223 * PickView.cc (PickView::list_click): Mark variable refresh as unused
224 to avoid compiler warning.
225 * nio-ftp.cc (NetIO_FTP::ok): Remove variable code to avoid compiler
226 warning.
227 * proppage.cc (PropertyPage::DialogProc): Ditto for retval.
228
229 * setup.exe.manifest: Add supportedOS entries to avoid annoying
230 "This program might not have installed correctly" PCA message on
231 Windows 7.
232
a2651d16
CF
2332011-12-22 Christopher Faylor <me.cygwin2011@cgf.cx>
234
235 * compress.cc: Explicitly include needed header.
236 * compress_bz.cc: Ditto.
237 * mkdir.h: Ditto.
238 * io_stream_cygfile.cc: Eliminate obsolete attempt to build as
239 non-mingw.
240 * io_stream_file.cc: Ditto throughout.
241 * mkdir.cc: Ditto.
242
6b412778
JT
2432011-12-21 Jon TURNEY <jon.turney@dronecode.org.uk>
244
245 * choose.cc (OnInit): Properly mark packages which were selected on
246 command line in unattended mode for download and installation.
247
4f6bf4f0
CF
2482011-09-08 Christopher Faylor <me.cygwin2011@cgf.cx>
249
250 * io_stream.h: Just call sys/types.h here rather than using our own
251 version of ssize_t.
252
fd90f0ee
CV
2532011-09-01 Corinna Vinschen <corinna@vinschen.de>
254
255 * CONTRIBUTORS: Add Warren Young.
256
052706d7 2572011-08-16 Corinna Vinschen <corinna@vinschen.de>
fd90f0ee 258 Warren Young <warren@etr-usa.com>
052706d7
CV
259
260 * cygwin-setup.ico: Slightly modified.
261 * cygwin-terminal.ico: Ditto.
262
49d90df7 2632011-08-15 Corinna Vinschen <corinna@vinschen.de>
fd90f0ee 264 Warren Young <warren@etr-usa.com>
243f3cc1 265
49d90df7 266 * cygwin.ico: New, smoother 152x152 icon.
243f3cc1 267
49d90df7 2682011-08-13 Jon TURNEY <jon.turney@dronecode.org.uk>
db9818d7 269
49d90df7
CV
270 * choose.cc (OnInit, createListview): Build the initial list of packages
271 to install in OnInit() not in CreateListView(). If packages were
272 selected on command line in unattended mode, just install those
273 packages.
274 * package_db.h (packagedb): Add addCommandLinePackages() method.
275 * package_db.cc (addCommandLinePackages): Add separate method to add
276 these so we can indicate if packages were added on the command line.
277
2782011-08-13 Jon TURNEY <jon.turney@dronecode.org.uk>
279
280 * PickView.cc (defaultTrust): Move implementation which deals with
281 package db from here...
282 * package_db.cc (defaultTrust): ... to here.
283 * package_db.h (packagedb): ... a new member function.
db9818d7 284
4dd4c7c9
CV
2852011-08-12 Corinna Vinschen <corinna@vinschen.de>
286
287 * res.rc: Move spash icon slightly. Fix copyright.
288
c0c58ffa 2892011-08-12 Corinna Vinschen <corinna@vinschen.de>
fd90f0ee 290 Warren Young <warren@etr-usa.com>
c0c58ffa
CV
291
292 * cygwin-setup.ico: New file.
293 * cygwin-terminal.ico: New file.
294 * cygwin.ico: New icons.
295 * desktop.cc (make_link): Take additional argument to take arguments
296 for shortcut. Append arg to argbuf.
297 (start_menu): Take additional argument to take argments for shortcut.
298 Add to call to make_link.
299 (desktop_icon): Ditto.
300 (save_icon): Take path and name of resource as arguments. Replace
301 Cygwin icon if it's the old one.
302 (do_desktop_setup): Save Cygwin standalone and Cygwin terminal icons.
303 Rename desktop and start menu shortcut name to "Cygwin Terminal", use
304 the cygwin terminal icon for them, and point them to mintty.
305 * res.rc: Change splash icon to keep size of original icon.
306 (IDI_CYGWIN_SETUP): New entry.
307 (IDI_CYGWIN_TERMINAL): New entry.
308 (CYGWIN-SETUP.ICON): New entry.
309 (CYGWIN-TERMINAL.ICON): New entry.
310 * resource.h (IDI_CYGWIN_SETUP): Define.
311 (IDI_CYGWIN_TERMINAL): Define.
312
2a252c4f
JT
3132011-07-25 Jon TURNEY <jon.turney@dronecode.org.uk>
314
315 * install.cc (do_install_thread): Only set progress bar output if at least
316 one package gets installed, to avoid a cosmetic issue.
317
bb4d8a4f
CV
3182011-07-25 Corinna Vinschen <corinna@vinschen.de>
319
320 * desktop.cc (make_link): Create shortcuts to command.com only on 9x.
321
32d90d0c 3222011-07-20 Andy Koppe <andy.koppe@gmail.com>
ec9c1d70
AK
323
324 * res.rc: Remove Prev button from chooser page.
325 * resource.h: Reflect removal of Prev button.
326 * package_meta.h (trustp): Ditto.
327 * choose.cc: Ditto.
328
39ae968f
JT
3292011-04-24 Jon TURNEY <jon.turney@dronecode.org.uk>
330
befc9dd8
CV
331 * download.cc (do_download_thread): Update progress display
332 when download phase starts
39ae968f 333
71d30974
JT
3342011-04-24 Jon TURNEY <jon.turney@dronecode.org.uk>
335
befc9dd8
CV
336 * install.cc (do_install_thread): Report overall progress while
337 md5summing packages.
71d30974 338
dda929ee
JT
3392011-04-08 Jon TURNEY <jon.turney@dronecode.org.uk>
340
befc9dd8 341 * archive_tar_file.cc (read): Handle short reads
dda929ee 342
fe9a0ef9
JT
3432011-04-08 Jon TURNEY <jon.turney@dronecode.org.uk>
344
befc9dd8
CV
345 * compress_bz.h (compress): Remove unused bufN member.
346 * compress_bz.cc (read): Handle bzip2 files containing multiple
347 streams
fe9a0ef9 348
93bf34cd
JT
3492011-04-08 Jon TURNEY <jon.turney@dronecode.org.uk>
350
befc9dd8
CV
351 * install.cc (extract_replace_on_reboot): New function containg code
352 extracted from...
353 (installOne): Report read errors differently to write errors
354 * archive.cc (extract_file): Distinguish read errors from write errors
93bf34cd 355
9e9bdee2
JT
3562011-04-08 Jon TURNEY <jon.turney@dronecode.org.uk>
357
befc9dd8 358 * io_stream.cc (copy): Propagate errors.
9e9bdee2 359
30f42053
JT
3602011-04-08 Jon TURNEY <jon.turney@dronecode.org.uk>
361
befc9dd8
CV
362 * compress_bz.cc (read, peek): Consistently return -1 and set lasterr
363 on an error.
364 * compress_gz.cc (read, write, peek): Ditto.
30f42053 365
99c0e3de
JT
3662011-04-08 Jon TURNEY <jon.turney@dronecode.org.uk>
367
befc9dd8
CV
368 * archive_tar_file.cc (read, write, peek, seek): Consistently return -1
369 and set lasterr on an error.
99c0e3de 370
570accc4
JT
3712011-01-02 Jon TURNEY <jon.turney@dronecode.org.uk>
372
befc9dd8 373 * crypto.c (ExtraKeyOption): Correct option description.
570accc4 374
19cd8e05
JT
3752010-12-16 Jon TURNEY <jon.turney@dronecode.org.uk>
376
377 * prereq.cc (OnNext, whatNext, OnUnattended): Fix PrereqPage::OnUnattended()
378 so PrereqPage behaves correctly in unattended modes.
379 * prereq.h (PrereqPage): Ditto
380 * proppage.cc (DialogProc): Update comment to clarify meaning of
381 OnUnattended() returning 0.
382
d4818fbe
JT
3832010-11-26 Jon TURNEY <jon.turney@dronecode.org.uk>
384
befc9dd8
CV
385 * site.cc (init): Canonicalize mirror URLs to ensure the end
386 with a '/'.
d4818fbe 387
263157cb
JT
3882010-11-19 Jon TURNEY <jon.turney@dronecode.org.uk>
389
befc9dd8
CV
390 * IniDBBuilderPackage.cc (IniDBBuilderPackage): Remove db.packages vector
391 sorting.
392 (buildPackage, buildPackageSource): Change package collection from vector
393 to map.
394 * PickView.cc (setViewMode, init_headers, defaultTrust): Ditto.
395 * choose.cc (createListview, logResults, keepClicked)
396 (changeTrust): Ditto
397 * install.cc (do_install_thread): Ditto
398 * download.cc (do_download_thread): Ditto
399 * prereq.cc (isMet): Ditto
400 * package_meta.cc (ScanDownloadedFiles): Ditto
401 * package_db.h (packagedb): Ditto
402 * package_db.cc (packagedb, flush, markUnVisited, setExistence)
403 (fillMissingCategory): Ditto
404 (findBinary, findSource): Rewrite to locate packages in map rather than
405 searching the whole vector, for performance.
406 (ConnectedLoopFinder, doIt, visit): Rewrite to refer to package using a
407 packagemeta *, as an index into the vector of packages can no longer be
408 used.
263157cb 409
c9c19491
CV
4102010-11-25 Corinna Vinschen <corinna@vinschen.de>
411
412 * package_db.cc (ConnectedLoopFinder::doIt): Drop hardcoded base-cygwin
413 dependency setting. Fix comment.
414
f27b921b
CV
4152010-11-23 Corinna Vinschen <corinna@vinschen.de>
416
417 * package_db.cc (ConnectedLoopFinder::doIt): Drop hardcoded base-passwd
418 dependency setting. Fix condition for base-cygwin string check.
419
561005e2
JT
4202010-11-06 Jon TURNEY <jon.turney@dronecode.org.uk>
421
befc9dd8
CV
422 * package_meta.h (packagemeta): Remove unused member variables for
423 storing timestamp of the setup.ini that package version came from.
424 * package_meta.cc (packagemeta): Ditto.
561005e2 425
e15fb0ab
JT
4262010-11-06 Jon TURNEY <jon.turney@dronecode.org.uk>
427
befc9dd8
CV
428 * package_version.h (packageversion): Add compareVersion() utility
429 function.
430 * package_version.cc (Vendor_version, Package_version)
431 (compareVersions): Implement the Vendor_version() and Package_version()
432 accessor functions. Add compareVersions() utility function.
433 * cygpackage.cc (setCanonicalVersion): Fix to extract vendor version
434 correctly.
435 * IniDBBuilderPackage.cc (add_correct_version): When multiple setup.ini's
436 offer different packages for the same stability level, use the package with
437 the highest version number rather than the package coming from the setup.ini
438 with the latest timestamp.
e15fb0ab 439
ad20ac46
JT
4402010-11-19 Jon TURNEY <jon.turney@dronecode.org.uk>
441
befc9dd8
CV
442 * choose.cc (OnNext): Remove PrereqChecker call, instead use new
443 WM_APP_PREREQ_CHECK state of Progress dialog.
444 * threebar.h (WM_APP_PREREQ_CHECK)
445 (WM_APP_PREREQ_CHECK_THREAD_COMPLETE): Add new messages.
446 * threebar.cc (OnActivate, OnMessageApp): Use single bar mode for
447 WM_APP_PREREQ_CHECK state. Handle new messages.
448 * dialog.h (do_prereq_check_thread): Add prototype.
449 * prereq.cc (isMet, do_prereq_check_thread)
450 (do_prereq_check_reflector, do_prereq_check): Add progress reporting
451 during isMet, and thread containing moved PrereqChecker code.
ad20ac46 452
57fd5d5a
JT
4532010-11-17 Jon TURNEY <jon.turney@dronecode.org.uk>
454
befc9dd8
CV
455 * package_meta.cc (set_action): Always set the binary tick box
456 when selecting a specific version (if binary is available)
57fd5d5a 457
29756e36
JT
4582010-11-17 Jon TURNEY <jon.turney@dronecode.org.uk>
459
befc9dd8
CV
460 * postinstall.cc (do_postinstall_thread): Refer to "Unknown package"
461 rather than "No package"
29756e36 462
6ab6abae
CF
4632010-11-19 Christopher Faylor <me+cygwin@cgf.cx>
464
465 Throughout, change all occurrences of "PostMessage" to PostMessageNow.
466 This works around problem where w32api uses a #define which calls the
467 Windows API version of PostMessage directly, confusing g++ 3.4.4.
468
d1b5a517
JT
4692010-11-07 Jon TURNEY <jon.turney@dronecode.org.uk>
470
befc9dd8
CV
471 * propsheet.cc (PropSheetProc): Set the big icon for the propsheet
472 window
d1b5a517 473
10087ff4
JT
4742010-11-07 Jon TURNEY <jon.turney@dronecode.org.uk>
475
befc9dd8
CV
476 * ini.cc (GuiParseFeedback::progress, GuiParseFeedback::iniName):
477 Update all the text in the progress dialog whilst parsing .ini file,
478 not just the top line.
10087ff4 479
6f68f70f
JT
4802010-11-07 Jon TURNEY <jon.turney@dronecode.org.uk>
481
befc9dd8
CV
482 * choose.cc (OnBack): Move PlaceDialog(false) so window is resized in
483 'Install from Local Directory' mode as well.
6f68f70f 484
460dd5de
JT
4852010-11-06 Jon TURNEY <jon.turney@dronecode.org.uk>
486
befc9dd8 487 * res.rc (IDD_NET): Make text referring to IE5 more general
460dd5de 488
3e4ddc99
JT
4892010-11-04 Jon TURNEY <jon.turney@dronecode.org.uk>
490
491 * compress_bz.h (compress): Add endReached flag.
492 * compress_bz.cc (read, compress_bz): Use endReached flag to return 0
493 for a read when EOF has been reached, after BZ2_bzDecompress returns
494 BZ_STREAM_END, rather than continue to try to call BZ2_bzDecompress
495 beyond the end of the compressed data, generating a BZ_SEQUENCE_ERROR.
496 * ini.cc (do_remote_ini): Now that bz2_stream doesn't always have a
497 spurious error, detect and report if an error occurred decompressing.
498
db09d718
CV
4992010-09-13 Václav Haisman <v.haisman@sh.cvut.cz>
500
501 * propsheet.cc (PropSheet::SetActivePage): Remove :: from call to
502 PropSheet_SetCurSel.
503 (PropSheet::SetActivePageByID): Remove :: from call to
504 PropSheet_SetCurSelByID.
505 (PropSheet::SetButtons): Remove :: from call to PropSheet_SetWizButtons.
506 (PropSheet::PressButton): Remove :: from call to PropSheet_PressButton.
507
287bd4b1
YS
5082010-09-07 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
509
510 * postinstall.cc: Add #include <algorithm> to fix build with gcc-4.x.
511
b14b3aeb
JT
5122010-08-29 Jon TURNEY <jon.turney@dronecode.org.uk>
513
514 * postinstall.cc (do_postinstall_thread): Don't run postinstall
515 scripts belonging to a just installed package twice.
516 * script.h (Script): Add operator ==
517
c3d07c13 5182010-08-25 Andy Koppe <andy.koppe@gmail.com>
7d489bb2 519
c3d07c13
AK
520 * script.cc (init_run_script): Set CYGWINFORALL="-A" for
521 postinstall/preremove scripts when installing for all users.
522
5541e189
AK
5232010-08-19 Andy Koppe <andy.koppe@gmail.com>
524
525 * package_meta.h (packagemeta::trustp): Update non-experimental
526 packages too when Exp is selected.
527
e9ed14d1
AK
5282010-08-18 Andy Koppe <andy.koppe@gmail.com>
529
530 * res.rc (IDD_PREREQ): Say "Resolving Dependencies" instead of
531 "Unmet Dependencies found"
532 * prereq.cc (PrereqPage::OnNext): Tone down message box about
533 missing dependencies.
534
03d6505f
AK
5352010-08-15 Andy Koppe <andy.koppe@gmail.com>
536
537 * postinstall.cc (PostInstallResultsPage::OnNext):
538 Remove postinstall script error message box.
539 * res.rc (IDS_POSTINSTALL): Try to make postinstall errors
540 less scary.
541
2d598be1
YS
5422010-08-11 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
543
544 * bootstrap.sh: Allow running from a builddir. Run configure
545 unless NOCONFIGURE is defined.
546 * doconfigure: Remove.
547 * Makefile.am (EXTRA_DIST): Remove doconfigure.
548 * README: Document that bootstrap.sh runs configure.
549 Remove reference to doconfigure.
550
c63e8b4a
YS
5512010-08-10 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
552
553 * configure.in: Check for prerequisites' headers.
554 * Makefile.am: Remove libinilex.a library, instead...
555 (inilint_SOURCES): Add inilex.ll. (setup_SOURCES): Ditto.
556 * inilex.ll: Use option nounput to avoid "defined but not used"
557 warning from yyunput().
558
10b2d051
YS
5592010-08-10 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
560
561 Fix compatibility with GCC 4.x.
562 * Makefile.am (setup_LDFLAGS): Pass -static to compiler instead of
563 linker so that libgcc is statically linked as well.
564 (autoload.o): Disable optimization.
565 * localdir.cc (browse_cb): Fix "jump to case label crosses
566 initialization" error.
567 * mklink2.cc (sfli): Fix "non-local variable uses anonymous type"
568 warning.
569 * ntdll.h: Fix "redeclared without dllimport attribute: previous
570 dllimport ignored" warnings.
571 * package_message.h (display): Fix "'exit' was not declared in this
572 scope" error.
573
fe434e30
YS
5742010-08-10 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
575
576 * Makefile.am: Treat libgetopt++ as full-fledged SUBDIRS.
577 (setup_LDADD): Always link against included libgetopt++.
578
1f673500
CV
5792010-08-08 Corinna Vinschen <corinna@vinschen.de>
580
581 * prereq.cc (PrereqChecker::getUnmetString): Improve dependency list
582 output.
583
c7c6e034
AK
5842010-08-07 Andy Koppe <andy.koppe@gmail.com>
585
586 * prereq.cc (PrereqChecker::isMet): Find unmet indirect
587 dependencies too.
588
9dc2b7e9
AK
5892010-08-06 Andy Koppe <andy.koppe@gmail.com>
590
591 * res.rc (IDS_VIEWBUTTON_TOOLTIP): Rename "Partial" view
592 to "Pending" (again).
593
8399bd2d
AK
5942010-08-05 Andy Koppe <andy.koppe@gmail.com>
595
596 * res.rc (IDD_PREREQ DIALOG): Tweak wording on dependency page.
597
d57da7e1
DK
5982010-07-31 Dave Korn <dave.korn.cygwin@gmail.com>
599
600 * install.cc (Installer::installOne): Also record zero-sized
601 tarballs as successfully installed.
602
3a71ab77
JT
6032010-07-30 Jon TURNEY <jon.turney@dronecode.org.uk>
604
a127a91e 605 * postinstall.cc (do_postinstall_reflector): Fix typo.
3a71ab77 606
b06628c5
CF
6072010-07-30 Christopher Faylor <me+cygwin@cgf.cx>
608
609 * inilex.ll: Allow "~" in a string.
610
7d3de3ed
JT
6112010-07-29 Jon TURNEY <jon.turney@dronecode.org.uk>
612
a127a91e
CF
613 * resource.h (IDD_POSTINSTALL, IDC_POSTINSTALL_EDIT): Add resource
614 identifiers for postinstall results page.
615 * res.rc (IDD_POSTINSTALL): Add dialog resource for postinstall results
616 page.
617 * postinstallresults.h: New file.
618 * postinstallresults.cc: New file.
619 * main.cc (main_display): Add a PostInstallResultsPage to the wizard.
620 * Makefile.am (setup_SOURCES): Add new files.
621 * threebar.cc (OnMessageApp): Allow WM_APP_POSTINSTALL_THREAD_COMPLETE
622 to select the next page shown.
623 * postinstall.cc (do_postinstall_thread)
624 (do_postinstall_reflector): Collect results of running scripts and
625 compose a reporting message which we pass to the postinstall results
626 page. Select postinstall results page next if there are results to
627 show, otherwise desktop setup page as before.
628 * script.cc (run): Don't rename as .done scripts which didn't run
629 successfully.
7d3de3ed 630
5a2eaf00
AK
6312010-07-26 Andy Koppe <andy.koppe@gmail.com>
632
a127a91e 633 * PickView.cc (PickView::views::caption): Rename "Partial" view
5a2eaf00
AK
634 to "Pending".
635 * res.rc (IDS_VIEWBUTTON_TOOLTIP): Ditto.
636
6372010-07-22 Andy Koppe <andy.koppe@gmail.com>
2c4487b3
CV
638
639 * PickPackageLine.cc (PickPackageLine::{click,set_action}):
640 Don't trigger automatic package selection when clicking on
641 packages or categories on chooser screen.
642 * PickCategoryLine.cc (PickCategoryLine::click): No more need to
643 prepare for automatic package selection with markUnVisited().
644 * res.rc: Drop "Warning!" from caption of Resolve Dependencies
645 screen.
646
65fa35d4
DK
6472010-04-17 Dave Korn <dave.korn.cygwin@gmail.com>
648
649 * root.cc (RootPage::OnNext): Don't construct a packagedb here nor
650 do deferred initialisation of static packagedb::task.
651 * source.cc (save_dialog): Don't construct a packagedb here, and
652 set static packagedb::task directly instead of chosen_db_task.
653 * package_meta.cc (packagemeta::action_caption): Don't bother to
654 construct a packagedb here, just access packagedb::task directly.
655 * package_db.cc: Move 'static members' comment near static members.
656 (chosen_db_task): Delete.
657 * package_db.h (chosen_db_task): Don't declare extern.
658 (packagedb): Extend comments on class.
659
8baf5374
DK
6602010-04-14 Dave Korn <dave.korn.cygwin@gmail.com>
661
662 * PickView.cc (PickView::WindowProc): Delete inadvertently-committed
663 debug logging.
664
325bb73a
DK
6652010-04-13 Dave Korn <dave.korn.cygwin@gmail.com>
666
667 * PickView.h (PickView::set_vscroll_info): Add prototype.
668 (PickView::hasClientRect): Rename from this ...
669 (PickView::hasWindowRect): ... to this ...
670 (PickView::lastClientRect): ... and from this ...
671 (PickView::lastWindowRect): ... to this.
672 * PickView.cc (PickView::PickView): Adjust member init to match.
673 (PickView::set_vscroll_info): Abstract code to set vertical scroll
674 bar proportions from ...
675 (PickView::list_click): ... here. Call it. Fix comment typo.
676 (PickView::WindowProc): Update all renamed variables in WM_SIZE
677 case, and check also for a y delta, calling set_vscroll_info if so.
678
67ce5bee
DK
6792010-04-13 Dave Korn <dave.korn.cygwin@gmail.com>
680
681 * window.cc (Window::Window): Initialise BusyCount and BusyCursor.
682 (Window::SetBusy): Set hourglass cursor, counting nested activations.
683 (Window::ClearBusy): Cancel one call to SetBusy and restore original
684 cursor if no longer busy.
685 * window.h (Window::BusyCount): New data member.
686 (Window::OldCursor): Likewise.
687 (Window::BusyCursor): Likewise.
688 (Window::SetBusy): Prototype.
689 (Window::ClearBusy): Likewise.
690 * choose.cc (ChooserPage::createListview): Invoke busy cursor
691 around long-running operation.
692 (ChooserPage::OnInit): Likewise.
693 (ChooserPage::changeTrust): Likewise.
694 * PickCategoryLine.cc (PickCategoryLine::set_action): Likewise.
695
644ca185
CF
6962010-04-08 Christopher Faylor <me+cygwin@cgf.cx>
697
698 * bootstrap.sh: Always reconfigure in libgetopt++.
699
700 * Makefile.am: Remove old code for direct copying to sourceware. Add
701 -src to source tarball.
702
d7406b7d
CV
7032010-04-07 Matthias Andree <matthias.andree@gmx.de>
704
705 * README (HOW TO BUILD): Mention mingw-lib{gcrypt,lzma}-devel.
706
707 * res.rc (IDD_DESKTOP): Move Installation Status line,
708 IDC_STATUS_HEADER and IDC_STATUS up 20 units, make IDC_STATUS text
709 20 units taller and 40 units wider so that IDS_REBOOT_REQUIRED
710 message fits the screen.
711 * res.rc (IDD_SPLASH): Bump copyright years in IDC_SLASH_COPYR to
712 "2000-2010".
713
2b411596
CV
7142010-04-07 Corinna Vinschen <corinna@vinschen.de>
715
716 * install.cc (create_allow_protected_renames): New function to
717 create AllowProtectedRenames registry entry.
718 (Installer::installOne): Call create_allow_protected_renames if former
719 call to MoveFileEx was successful.
720
1e0f90f9
CW
7212010-03-18 Charles Wilson <cygwin@cwilson.fastmail.fm>
722
723 Use external crypto libraries
724 * Makefile.am: Remove local libgcrypt and libgpg-error
725 source directories from AM_CPPFLAGS.
726 * configure.ac: Remove libgcrypt and libgpg-error subdirs
727 from AC_CONFIG_SUBDIRS. Remove now-unnecessary cruft.
728 * doconfigure: Specify gcc-3 and g++-3. Set PATH when $build
729 is cygwin, so that correct (mingw) libgcrypt and libgpg-error
730 config scripts can be used.
731
732 Remove libgpg-error.
733 * libgpg-error/tests/Makefile.am, libgpg-error/tests/Makefile.in,
734 libgpg-error/tests/t-strerror.c, libgpg-error/tests/t-syserror.c,
735 libgpg-error/po/ChangeLog, libgpg-error/po/LINGUAS,
736 libgpg-error/po/Makefile.in.in, libgpg-error/po/Makevars,
737 libgpg-error/po/POTFILES.in, libgpg-error/po/Rules-quot,
738 libgpg-error/po/boldquot.sed, libgpg-error/po/de.gmo,
739 libgpg-error/po/de.po, libgpg-error/po/en@boldquot.header,
740 libgpg-error/po/en@quot.header, libgpg-error/po/fr.gmo,
741 libgpg-error/po/fr.po libgpg-error/po/insert-header.sin,
742 libgpg-error/po/libgpg-error.pot, libgpg-error/po/pl.gmo,
743 libgpg-error/po/pl.po, libgpg-error/po/quot.sed,
744 libgpg-error/po/remove-potcdate.sin, libgpg-error/po/ro.gmo,
745 libgpg-error/po/ro.po libgpg-error/po/stamp-po,
746 libgpg-error/po/sv.po, libgpg-error/po/vi.gmo,
747 libgpg-error/po/vi.po, libgpg-error/po/sv.gmo,
748 libgpg-error/m4/ChangeLog, libgpg-error/m4/Makefile.am,
749 libgpg-error/m4/ac_prog_cc_for_build.m4, libgpg-error/m4/autobuild.m4,
750 libgpg-error/m4/codeset.m4, libgpg-error/m4/gettext.m4,
751 libgpg-error/m4/glibc2.m4, libgpg-error/m4/glibc21.m4,
752 libgpg-error/m4/iconv.m4, libgpg-error/m4/intdiv0.m4,
753 libgpg-error/m4/intmax.m4, libgpg-error/m4/inttypes-h.m4,
754 libgpg-error/m4/inttypes-pri.m4, libgpg-error/m4/inttypes.m4,
755 libgpg-error/m4/inttypes_h.m4, libgpg-error/m4/isc-posix.m4,
756 libgpg-error/m4/lcmessage.m4, libgpg-error/m4/lib-ld.m4,
757 libgpg-error/m4/lib-link.m4, libgpg-error/m4/lib-prefix.m4,
758 libgpg-error/m4/libtool.m4, libgpg-error/m4/lock.m4,
759 libgpg-error/m4/longdouble.m4, libgpg-error/m4/longlong.m4,
760 libgpg-error/m4/nls.m4, libgpg-error/m4/po.m4,
761 libgpg-error/m4/printf-posix.m4, libgpg-error/m4/progtest.m4,
762 libgpg-error/m4/signed.m4, libgpg-error/m4/size_max.m4,
763 libgpg-error/m4/stdint_h.m4, libgpg-error/m4/uintmax_t.m4,
764 libgpg-error/m4/ulonglong.m4, libgpg-error/m4/visibility.m4,
765 libgpg-error/m4/wchar_t.m4, libgpg-error/m4/wint_t.m4,
766 libgpg-error/m4/xsize.m4, libgpg-error/m4/Makefile.in,
767 libgpg-error/lang/Makefile.am, libgpg-error/lang/README,
768 libgpg-error/lang/Makefile.in, libgpg-error/lang/cl/Makefile.am,
769 libgpg-error/lang/cl/README, libgpg-error/lang/cl/gpg-error-package.lisp,
770 libgpg-error/lang/cl/gpg-error.asd, libgpg-error/lang/cl/gpg-error.asd.in,
771 libgpg-error/lang/cl/gpg-error.lisp, libgpg-error/lang/cl/mkerrcodes.awk,
772 libgpg-error/lang/cl/Makefile.in, libgpg-error/src/Makefile.am,
773 libgpg-error/src/README, libgpg-error/src/code-from-errno.c,
774 libgpg-error/src/code-to-errno.c, libgpg-error/src/err-codes.h,
775 libgpg-error/src/err-codes.h.in, libgpg-error/src/err-sources.h,
776 libgpg-error/src/err-sources.h.in, libgpg-error/src/errnos.in,
777 libgpg-error/src/gettext.h, libgpg-error/src/gpg-error-config.in,
778 libgpg-error/src/gpg-error.c, libgpg-error/src/gpg-error.def,
779 libgpg-error/src/gpg-error.h, libgpg-error/src/gpg-error.h.in,
780 libgpg-error/src/gpg-error.m4, libgpg-error/src/init.c,
781 libgpg-error/src/mkerrcodes.awk, libgpg-error/src/mkerrcodes.c,
782 libgpg-error/src/mkerrcodes1.awk, libgpg-error/src/mkerrcodes2.awk,
783 libgpg-error/src/mkerrnos.awk, libgpg-error/src/mkheader.awk,
784 libgpg-error/src/mkstrtable.awk, libgpg-error/src/strerror-sym.c,
785 libgpg-error/src/strerror.c, libgpg-error/src/strsource-sym.c,
786 libgpg-error/src/strsource.c, libgpg-error/src/versioninfo.rc.in,
787 libgpg-error/src/w32-gettext.c, libgpg-error/src/w32-gettext.h,
788 libgpg-error/src/Makefile.in, libgpg-error/ABOUT-NLS,
789 libgpg-error/AUTHORS, libgpg-error/COPYING, libgpg-error/COPYING.LIB,
790 libgpg-error/ChangeLog, libgpg-error/INSTALL, libgpg-error/Makefile.am,
791 libgpg-error/NEWS, libgpg-error/README, libgpg-error/THANKS,
792 libgpg-error/VERSION, libgpg-error/autogen.sh, libgpg-error/compile,
793 libgpg-error/config.guess, libgpg-error/config.rpath,
794 libgpg-error/config.sub, libgpg-error/configure.ac, libgpg-error/depcomp,
795 libgpg-error/install-sh, libgpg-error/libgpg-error.spec,
796 libgpg-error/libgpg-error.spec.in, libgpg-error/ltmain.sh,
797 libgpg-error/missing, libgpg-error/mkinstalldirs,
798 libgpg-error/aclocal.m4, libgpg-error/configure,
799 libgpg-error/config.h.in, libgpg-error/Makefile.in: Remove.
800
801 Remove libgcrypt.
802 * libgcrypt/tests/ChangeLog, libgcrypt/tests/Makefile.am,
803 libgcrypt/tests/ac-data.c, libgcrypt/tests/ac-schemes.c,
804 libgcrypt/tests/ac.c, libgcrypt/tests/basic.c,
805 libgcrypt/tests/benchmark.c, libgcrypt/tests/hmac.c,
806 libgcrypt/tests/keygen.c, libgcrypt/tests/keygrip.c,
807 libgcrypt/tests/mpitests.c, libgcrypt/tests/pkbench.c,
808 libgcrypt/tests/prime.c, libgcrypt/tests/pubkey.c,
809 libgcrypt/tests/random.c, libgcrypt/tests/register.c,
810 libgcrypt/tests/t-mpi-bit.c, libgcrypt/tests/testapi.c,
811 libgcrypt/tests/tsexp.c, libgcrypt/tests/version.c,
812 libgcrypt/tests/Makefile.in, libgcrypt/src/ChangeLog
813 libgcrypt/src/Makefile.am, libgcrypt/src/Manifest, libgcrypt/src/ath.c,
814 libgcrypt/src/ath.h, libgcrypt/src/cipher.h, libgcrypt/src/dumpsexp.c,
815 libgcrypt/src/g10lib.h, libgcrypt/src/gcrypt-module.h,
816 libgcrypt/src/gcrypt.h, libgcrypt/src/gcrypt.h.in,
817 libgcrypt/src/gcryptrnd.c, libgcrypt/src/getrandom.c,
818 libgcrypt/src/global.c, libgcrypt/src/hwfeatures.c,
819 libgcrypt/src/libgcrypt-config.in, libgcrypt/src/libgcrypt.def,
820 libgcrypt/src/libgcrypt.m4, libgcrypt/src/libgcrypt.vers,
821 libgcrypt/src/misc.c, libgcrypt/src/missing-string.c,
822 libgcrypt/src/module.c, libgcrypt/src/mpi.h, libgcrypt/src/secmem.h,
823 libgcrypt/src/sexp.c, libgcrypt/src/stdmem.c, libgcrypt/src/stdmem.h,
824 libgcrypt/src/types.h, libgcrypt/src/versioninfo.rc.in,
825 libgcrypt/src/visibility.c, libgcrypt/src/visibility.h,
826 libgcrypt/src/Makefile.in, libgcrypt/src/secmem.c,
827 libgcrypt/m4/ChangeLog, libgcrypt/m4/Makefile.am,
828 libgcrypt/m4/libtool.m4, libgcrypt/m4/noexecstack.m4,
829 libgcrypt/m4/onceonly.m4, libgcrypt/m4/socklen.m4,
830 libgcrypt/m4/sys_socket_h.m4, libgcrypt/m4/Makefile.in,
831 libgcrypt/doc/ChangeLog, libgcrypt/doc/HACKING,
832 libgcrypt/doc/Makefile.am, libgcrypt/doc/README.apichanges,
833 libgcrypt/doc/gcrypt.texi, libgcrypt/doc/gpl.texi,
834 libgcrypt/doc/lgpl.texi, libgcrypt/doc/mdate-sh,
835 libgcrypt/doc/texinfo.tex, libgcrypt/doc/stamp-vti,
836 libgcrypt/doc/version.texi, libgcrypt/doc/gcrypt.info,
837 libgcrypt/doc/Makefile.in, libgcrypt/cipher/ChangeLog,
838 libgcrypt/cipher/Makefile.am, libgcrypt/cipher/Manifest,
839 libgcrypt/cipher/ac.c, libgcrypt/cipher/arcfour.c,
840 libgcrypt/cipher/bithelp.h, libgcrypt/cipher/blowfish.c,
841 libgcrypt/cipher/camellia-glue.c, libgcrypt/cipher/camellia.c,
842 libgcrypt/cipher/camellia.h, libgcrypt/cipher/cast5.c,
843 libgcrypt/cipher/cipher.c, libgcrypt/cipher/crc.c,
844 libgcrypt/cipher/des.c, libgcrypt/cipher/dsa.c, libgcrypt/cipher/ecc.c,
845 libgcrypt/cipher/elgamal.c, libgcrypt/cipher/md.c,
846 libgcrypt/cipher/md4.c, libgcrypt/cipher/md5.c,
847 libgcrypt/cipher/primegen.c, libgcrypt/cipher/pubkey.c,
848 libgcrypt/cipher/rand-internal.h, libgcrypt/cipher/random-daemon.c,
849 libgcrypt/cipher/random.c, libgcrypt/cipher/random.h,
850 libgcrypt/cipher/rfc2268.c, libgcrypt/cipher/rijndael-tables.h,
851 libgcrypt/cipher/rijndael.c, libgcrypt/cipher/rmd.h,
852 libgcrypt/cipher/rmd160.c, libgcrypt/cipher/rndegd.c,
853 libgcrypt/cipher/rndhw.c, libgcrypt/cipher/rndlinux.c,
854 libgcrypt/cipher/rndunix.c, libgcrypt/cipher/rndw32.c,
855 libgcrypt/cipher/rsa.c, libgcrypt/cipher/seed.c,
856 libgcrypt/cipher/serpent.c, libgcrypt/cipher/sha1.c,
857 libgcrypt/cipher/sha256.c, libgcrypt/cipher/sha512.c,
858 libgcrypt/cipher/tiger.c, libgcrypt/cipher/twofish.c,
859 libgcrypt/cipher/whirlpool.c, libgcrypt/cipher/Makefile.in,
860 libgcrypt/AUTHORS, libgcrypt/BUGS, libgcrypt/COPYING,
861 libgcrypt/COPYING.LIB, libgcrypt/ChangeLog, libgcrypt/INSTALL,
862 libgcrypt/Makefile.am, libgcrypt/NEWS, libgcrypt/README,
863 libgcrypt/README.SVN, libgcrypt/THANKS, libgcrypt/TODO, libgcrypt/VERSION,
864 libgcrypt/acinclude.m4, libgcrypt/autogen.sh, libgcrypt/compile,
865 libgcrypt/config.guess, libgcrypt/config.sub, libgcrypt/configure.ac,
866 libgcrypt/depcomp, libgcrypt/install-sh, libgcrypt/ltmain.sh,
867 libgcrypt/missing, libgcrypt/mkinstalldirs, , libgcrypt/aclocal.m4,
868 libgcrypt/configure, libgcrypt/config.h.in, libgcrypt/Makefile.in,
869 libgcrypt/mpi/ChangeLog, libgcrypt/mpi/Makefile.am,
870 libgcrypt/mpi/Manifest, libgcrypt/mpi/config.links, libgcrypt/mpi/ec.c,
871 libgcrypt/mpi/longlong.h, libgcrypt/mpi/mpi-add.c,
872 libgcrypt/mpi/mpi-bit.c, libgcrypt/mpi/mpi-cmp.c,
873 libgcrypt/mpi/mpi-div.c, libgcrypt/mpi/mpi-gcd.c,
874 libgcrypt/mpi/mpi-inline.c, libgcrypt/mpi/mpi-inline.h,
875 libgcrypt/mpi/mpi-internal.h, libgcrypt/mpi/mpi-inv.c,
876 libgcrypt/mpi/mpi-mod.c, libgcrypt/mpi/mpi-mpow.c,
877 libgcrypt/mpi/mpi-mul.c, libgcrypt/mpi/mpi-pow.c,
878 libgcrypt/mpi/mpi-scan.c, libgcrypt/mpi/mpicoder.c,
879 libgcrypt/mpi/mpih-div.c, libgcrypt/mpi/mpih-mul.c,
880 libgcrypt/mpi/mpiutil.c, libgcrypt/mpi/Makefile.in,
881 libgcrypt/mpi/alpha/README, libgcrypt/mpi/alpha/distfiles,
882 libgcrypt/mpi/alpha/mpih-add1.S, libgcrypt/mpi/alpha/mpih-lshift.S,
883 libgcrypt/mpi/alpha/mpih-mul1.S, libgcrypt/mpi/alpha/mpih-mul2.S,
884 libgcrypt/mpi/alpha/mpih-mul3.S, libgcrypt/mpi/alpha/mpih-rshift.S,
885 libgcrypt/mpi/alpha/mpih-sub1.S, libgcrypt/mpi/alpha/udiv-qrnnd.S,
886 libgcrypt/mpi/amd64/distfiles, libgcrypt/mpi/amd64/mpih-add1.S,
887 libgcrypt/mpi/amd64/mpih-lshift.S, libgcrypt/mpi/amd64/mpih-mul1.S,
888 libgcrypt/mpi/amd64/mpih-mul2.S, libgcrypt/mpi/amd64/mpih-mul3.S,
889 libgcrypt/mpi/amd64/mpih-rshift.S, libgcrypt/mpi/amd64/mpih-sub1.S,
890 libgcrypt/mpi/generic/Manifest, libgcrypt/mpi/generic/distfiles,
891 libgcrypt/mpi/generic/mpi-asm-defs.h, libgcrypt/mpi/generic/mpih-add1.c,
892 libgcrypt/mpi/generic/mpih-lshift.c, libgcrypt/mpi/generic/mpih-mul1.c,
893 libgcrypt/mpi/generic/mpih-mul2.c, libgcrypt/mpi/generic/mpih-mul3.c,
894 libgcrypt/mpi/generic/mpih-rshift.c, libgcrypt/mpi/generic/mpih-sub1.c,
895 libgcrypt/mpi/generic/udiv-w-sdiv.c, libgcrypt/mpi/hppa/README,
896 libgcrypt/mpi/hppa/distfiles, libgcrypt/mpi/hppa/mpih-add1.S,
897 libgcrypt/mpi/hppa/mpih-lshift.S, libgcrypt/mpi/hppa/mpih-rshift.S,
898 libgcrypt/mpi/hppa/mpih-sub1.S, libgcrypt/mpi/hppa/udiv-qrnnd.S,
899 libgcrypt/mpi/hppa1.1/distfiles, libgcrypt/mpi/hppa1.1/mpih-mul1.S,
900 libgcrypt/mpi/hppa1.1/mpih-mul2.S, libgcrypt/mpi/hppa1.1/mpih-mul3.S,
901 libgcrypt/mpi/hppa1.1/udiv-qrnnd.S, libgcrypt/mpi/i386/Manifest,
902 libgcrypt/mpi/i386/distfiles, libgcrypt/mpi/i386/mpih-add1.S,
903 libgcrypt/mpi/i386/mpih-lshift.S, libgcrypt/mpi/i386/mpih-mul1.S,
904 libgcrypt/mpi/i386/mpih-mul2.S, libgcrypt/mpi/i386/mpih-mul3.S,
905 libgcrypt/mpi/i386/mpih-rshift.S, libgcrypt/mpi/i386/mpih-sub1.S,
906 libgcrypt/mpi/i386/syntax.h, libgcrypt/mpi/i586/Manifest,
907 libgcrypt/mpi/i586/README, libgcrypt/mpi/i586/distfiles,
908 libgcrypt/mpi/i586/mpih-add1.S, libgcrypt/mpi/i586/mpih-lshift.S,
909 libgcrypt/mpi/i586/mpih-mul1.S, libgcrypt/mpi/i586/mpih-mul2.S,
910 libgcrypt/mpi/i586/mpih-mul3.S, libgcrypt/mpi/i586/mpih-rshift.S,
911 libgcrypt/mpi/i586/mpih-sub1.S, libgcrypt/mpi/m68k/Manifest,
912 libgcrypt/mpi/m68k/distfiles, libgcrypt/mpi/m68k/mpih-add1.S,
913 libgcrypt/mpi/m68k/mpih-lshift.S, libgcrypt/mpi/m68k/mpih-rshift.S,
914 libgcrypt/mpi/m68k/mpih-sub1.S, libgcrypt/mpi/m68k/syntax.h,
915 libgcrypt/mpi/mips3/Manifest, libgcrypt/mpi/mips3/README,
916 libgcrypt/mpi/mips3/distfiles, libgcrypt/mpi/mips3/mpi-asm-defs.h,
917 libgcrypt/mpi/mips3/mpih-add1.S, libgcrypt/mpi/mips3/mpih-lshift.S,
918 libgcrypt/mpi/mips3/mpih-mul1.S, libgcrypt/mpi/mips3/mpih-mul2.S,
919 libgcrypt/mpi/mips3/mpih-mul3.S, libgcrypt/mpi/mips3/mpih-rshift.S,
920 libgcrypt/mpi/mips3/mpih-sub1.S, libgcrypt/mpi/pa7100/Manifest,
921 libgcrypt/mpi/pa7100/distfiles, libgcrypt/mpi/pa7100/mpih-lshift.S,
922 libgcrypt/mpi/pa7100/mpih-rshift.S, libgcrypt/mpi/pentium4/README,
923 libgcrypt/mpi/pentium4/distfiles, libgcrypt/mpi/power/Manifest,
924 libgcrypt/mpi/power/distfiles, libgcrypt/mpi/power/mpih-add1.S,
925 libgcrypt/mpi/power/mpih-lshift.S, libgcrypt/mpi/power/mpih-mul1.S,
926 libgcrypt/mpi/power/mpih-mul2.S, libgcrypt/mpi/power/mpih-mul3.S,
927 libgcrypt/mpi/power/mpih-rshift.S, libgcrypt/mpi/power/mpih-sub1.S,
928 libgcrypt/mpi/powerpc32/Manifest, libgcrypt/mpi/powerpc32/distfiles,
929 libgcrypt/mpi/powerpc32/mpih-add1.S,
930 libgcrypt/mpi/powerpc32/mpih-lshift.S,
931 libgcrypt/mpi/powerpc32/mpih-mul1.S,
932 libgcrypt/mpi/powerpc32/mpih-mul2.S,
933 libgcrypt/mpi/powerpc32/mpih-mul3.S,
934 libgcrypt/mpi/powerpc32/mpih-rshift.S,
935 libgcrypt/mpi/powerpc32/mpih-sub1.S, libgcrypt/mpi/powerpc32/syntax.h,
936 libgcrypt/mpi/powerpc64/distfiles, libgcrypt/mpi/sparc32/Manifest,
937 libgcrypt/mpi/sparc32/distfiles, libgcrypt/mpi/sparc32/mpih-add1.S,
938 libgcrypt/mpi/sparc32/mpih-lshift.S,
939 libgcrypt/mpi/sparc32/mpih-rshift.S, libgcrypt/mpi/sparc32/udiv.S,
940 libgcrypt/mpi/sparc32v8/Manifest, libgcrypt/mpi/sparc32v8/distfiles,
941 libgcrypt/mpi/sparc32v8/mpih-mul1.S,
942 libgcrypt/mpi/sparc32v8/mpih-mul2.S,
943 libgcrypt/mpi/sparc32v8/mpih-mul3.S, libgcrypt/mpi/supersparc/Manifest,
944 libgcrypt/mpi/supersparc/distfiles,
945 libgcrypt/mpi/supersparc/udiv.S, libgcrypt/mpi/m68k/mc68020/distfiles
946 libgcrypt/mpi/m68k/mc68020/Manifest,
947 libgcrypt/mpi/m68k/mc68020/mpih-mul1.S,
948 libgcrypt/mpi/m68k/mc68020/mpih-mul2.S,
949 libgcrypt/mpi/m68k/mc68020/mpih-mul3.S,
950 libgcrypt/mpi/pentium4/mmx/distfiles,
951 libgcrypt/mpi/pentium4/mmx/mpih-lshift.S,
952 libgcrypt/mpi/pentium4/mmx/mpih-rshift.S,
953 libgcrypt/mpi/pentium4/sse2/distfiles,
954 libgcrypt/mpi/pentium4/sse2/mpih-add1.S,
955 libgcrypt/mpi/pentium4/sse2/mpih-mul1.S,
956 libgcrypt/mpi/pentium4/sse2/mpih-mul2.S,
957 libgcrypt/mpi/pentium4/sse2/mpih-mul3.S,
958 libgcrypt/mpi/pentium4/sse2/mpih-sub1.S: Remove.
959
d9129990
CV
9602010-03-17 Corinna Vinschen <corinna@vinschen.de>
961
962 * autoload.cc (Auto): Create autoload code in an executable section
963 called .autoload_text to avoid problems with DEP.
964
a3cc7986
CF
9652010-03-14 Christopher Faylor <me+cygwin@cgf.cx>
966
0a4e9289 967 * Makefile.am: Add a setup-src target.
a3cc7986 968
671140f9
CW
9692010-03-14 Charles Wilson <cygwin@cwilson.fastmail.fm>
970
971 Support xz and lzma decompression via liblzma
972 * Makefile.am: Add -DLZMA_API_STATIC to AM_CPPFLAGS,
973 -lzma to setup_LDADD, and -static-libtool-libs to
974 setup_LDFLAGS. Update setup_SOURCES.
975 * compress.cc: Update includes.
976 (compress::decompress): Use compress_xz rather than
977 compress_lzma; compress_xz supports both xz and lzma
978 decompression.
979 * compress_xz.h: New.
980 * compress_xz.cc: New.
981 * compress_lzma.h: Removed.
982 * compress_lzma.cc: Removed.
983 * lzma-sdk/LzmaDec.c: Removed.
984 * lzma-sdk/LzmaDec.h: Removed.
985 * lzma-sdk/Types.h: Removed.
986
f1c131f2
CV
9872010-03-13 DJ Delorie <dj@redhat.com>
988
989 * nio-ftp.c (read): Read RETR status code on EOF to avoid
990 deadlock with PASV.
991
08267187
CV
9922010-03-01 Corinna Vinschen <corinna@vinschen.de>
993
994 * filemanip.cc (mklongpath): Skip "." and ".." path components to
995 avoid error messages.
996
26c8444e
CV
9972010-02-15 Corinna Vinschen <corinna@vinschen.de>
998
999 * filemanip.cc (mklongpath): Simplify backslash folding.
1000
6e2c72d0
CV
10012010-02-15 Corinna Vinschen <corinna@vinschen.de>
1002
1003 * filemanip.cc (transform_chars): Drop function.
1004 (mklongpath): Call mbrtowc in a loop rather than just mbstowcs.
1005 Transform characters on the fly. Fold multiple backslashes into one.
1006 Drop trailing backslash.
1007
7a4e611a
DK
10082010-02-15 Dave Korn <dave.korn.cygwin@gmail.com>
1009
1010 * choose.cc (ChooserPage::PlaceDialog): Only skip resizing window
1011 in fully-unattended mode, not chooser-only mode.
1012 (ChooserPage::OnUnattended): Return appropriate status to run page
1013 or not according to kind of unattended mode.
1014 * choose.h (ChooserPage::OnUnattended): Remove inline implementation
1015 and retain prototype only.
1016 * main.cc (PackageManagerOption): New boolean option.
1017 (main): Take it into account when setting unattended_mode.
1018 * proppage.cc (PropertyPage::DialogProc): Use new enum type when
1019 setting unattended_mode.
1020 * state.cc (unattended_mode): Change from bool to enum attend_mode.
1021 * state.h (enum attend_mode): Declare new enum type.
1022 (unattended_mode): Update extern declaration to use it.
1023
2801c09c
CV
10242010-02-04 Corinna Vinschen <corinna@vinschen.de>
1025
1026 * win32.cc (NTSecurity::GetPosixPerms): Return NULL security descriptor
1027 if is_legacy is set.
1028 (NTSecurity::SetPosixPerms): Remove.
1029 * win32.h (NTSecurity::GetPosixPerms): Remove declaration.
1030
d2a5fdfb
CV
10312010-02-02 Corinna Vinschen <corinna@vinschen.de>
1032
1033 * desktop.cc (make_link): Use 0 default permissions when creating files
1034 and directories.
1035 * download.cc (download_one): Ditto.
1036 * ini.cc (do_remote_ini): Ditto.
1037 * localdir.cc (offer_to_create): Ditto.
1038 * filemanip.cc (nt_wfopen): Use Windows default permissions if perms
1039 is set to 0.
1040 * mkdir.cc (mkdir_p): Ditto if mode is set to 0.
1041
b67a5ea0
CF
10422010-01-29 Christopher Faylor <me+cygwin@cgf.cx>
1043
1044 * mount.cc (read_mounts_9x): Preserve old way of doing things when
1045 is_legacy.
1046
558484cc
CF
10472010-01-28 Christopher Faylor <me+cygwin@cgf.cx>
1048
1049 * desktop.cc (make_link): Preserve old way of doing things when
1050 is_legacy.
1051 (make_cygwin_bat): Ditto.
1052 (save_icon): Ditto.
1053 * mount.cc (read_mounts): Ditto.
1054 (set_root_dir): Ditto.
1055 * root.cc (load_dialog): Ditto.
1056 (save_dialog): Ditto.
1057 * install.cc (Installer::installOne): Don't install anything if there
1058 is no canonical file associated with source.
1059 (do_install_thread): Set up old-style registry entries if is_legacy
1060 rather than just keying on whether this is Windows NT.
1061 * io_stream_file.cc (io_stream_file::exists): Redefine "exists" to mean
1062 "it's a file".
1063
d0c6ddb9
CF
10642010-01-16 Christopher Faylor <me+cygwin@cgf.cx>
1065
1066 * archive_tar.c (archive_tar_file::read): Always set read_something
1067 even for zero-length files.
1068
bb000e11
CF
10692010-01-16 Christopher Faylor <me+cygwin@cgf.cx>
1070
1071 * archive_tar.h (archive_tar_file::read_something): New member.
1072 * archive_tar_file.cc (archive_tar_file::archive_tar_file): Don't reset
1073 state unless we've actually read something.
1074 (archive_tar_file::read): Set read_something variable here to indicate
1075 that we've read something from the tar file.
1076
7c907c13
CF
10772010-01-13 Christopher Faylor <me+cygwin@cgf.cx>
1078
1079 * localdir.cc (LocalDirPage::OnNext): Strip trailing slashes.
1080
89216328
CF
10812009-12-27 Christopher Faylor <me+cygwin@cgf.cx>
1082
1083 * main.cc (dyn_AttachConsole): Make static.
1084 (dyn_GetLongPathName): New variable.
1085 (set_dynaddr): New function.
1086 (set_cout): Don't set dyn_AttachConsole here.
1087 (set_legacy): Don't attempt to call function which does not exist in
1088 older versions of NT.
1089 (main): Call set_dynaddr to set dynamic load addresses.
1090
4ea94dbb
CF
10912009-12-22 Christopher Faylor <me+cygwin@cgf.cx>
1092
1093 * ini.h: Use is_legacy to control setup.ini names.
1094 * main.cc (set_legacy): New function.
1095 (main): Call set_legacy with program name to determine if this is
1096 supposed to be an installation of the legacy version of cygwin. Issue
1097 a warning on attempt to install legacy on Windows NT class system.
1098
84b04515
CF
10992009-12-22 Christopher Faylor <me+cygwin@cgf.cx>
1100
1101 * package_message (packagemessage::display): Avoid displaying a message
1102 when in unattended mode.
1103
4d10ec8c
CV
11042009-12-22 Corinna Vinschen <corinna@vinschen.de>
1105
1106 * win32.h (isdirsep): Define to replace local isslash definitions.
1107 * UserSettings.cc (UserSettings::open_settings): Remove isslash.
1108 Use isdirsep instead of isslash.
1109 * filemanip.cc (mklongpath): Ditto.
1110 * root.cc (directory_is_rootdir): Ditto.
1111 * localdir.cc (LocalDirSetting::save): Avoid consecutive backslashes
1112 in setup log file paths.
1113 * main.cc (main): Ditto.
1114
e305f965
CF
11152009-12-21 Christopher Faylor <me+cygwin@cgf.cx>
1116
1117 * choose.cc (ChooserPage::PlaceDialog): Put *correct* size in
1118 WINDOWPLACEMENT length field.
1119
26922cd2
CV
11202009-12-18 Corinna Vinschen <corinna@vinschen.de>
1121
1122 Throughout, revert prototypes and methods set_mtime_and_mode to
1123 set_mtime and only care for the file timestamp.
1124
1125 Throughout, accommodate additional mode_t parameter in call to
1126 io_stream::open.
1127
1128 * IOStreamProvider.h (IOStreamProvider::open): Add mode_t parameter.
1129 * archive.cc (archive::extract_file): Reorder creation of in and tmp
1130 to get the file mode from the tar archive earlier. Call io_stream::open
1131 with additional mode from tar archive. Accommodate reversion to
1132 set_mtime.
1133 * filemanip.cc (nt_wfopen): Remove retry loop. Instead initialize
1134 OBJECT_ATTRIBUTES with matching POSIX perms according to incoming
1135 perms to create correct ACL on file creation. Remove subsequent call
1136 to nt_sec.SetPosixPerms.
1137 * io_stream.cc (io_stream::open): Take additional mode_t parameter
1138 and connect through to IOStreamProvider's open.
1139 * io_stream.h (io_stream::open): Add mode_t parameter.
1140 * io_stream_cygfile.cc (CygFileProvider::open): Ditto.
1141 (io_stream_cygfile::io_stream_cygfile): Ditto. Call nt_wfopen with
1142 incoming mode_t parameter. Make sure .exe and .dll files always
1143 have execute permissions set.
1144 (io_stream_cygfile::set_mtime): Remove retry loop and open file with
1145 just GENERIC_WRITE access.
1146 * io_stream_cygfile.h (io_stream_cygfile::io_stream_cygfile): Add mode_t
1147 parameter.
1148 * io_stream_file.cc (FileProvider::open): Ditto.
1149 (io_stream_file::io_stream_file): Ditto. Call nt_wfopen with incoming
1150 mode_t parameter.
1151 * io_stream_file.h (io_stream_file::io_stream_file): Add mode_t
1152 parameter.
1153 * io_stream_memory.h (class io_stream_memory): Remove mode member.
1154 Just return 0 from get_mode.
1155 * mkdir.cc (mkdir_p): Remove retry loop. Instead initialize
1156 OBJECT_ATTRIBUTES with matching POSIX perms according to incoming
1157 perms to create correct ACL on file creation. Remove subsequent call
1158 to nt_sec.SetPosixPerms.
1159 * mklink2.cc (mkcygsymlink_nt): Remove retry loop. Instead initialize
1160 SECURITY_ATTRIBUTES with matching POSIX perms to create correct ACL on
1161 file creation.
1162 * win32.cc (NTSecurity::GetPosixPerms): New function to generate
1163 POSIX ACL. Default to current owner and current primary group for
1164 owner/group permissions.
1165 (NTSecurity::SetPosixPerms): Let GetPosixPerms create the DACL.
1166 (NTSecurity::setAdminGroup): Set groupSID to admins SID if successful.
1167 (NTSecurity::setDefaultSecurity): Store user SID in ownerSID member.
1168 Default groupSID to original primary group.
1169 * win32.h (struct acl_t): Define here.
1170 (class NTSecurity): Rename ownerSID and groupSID to cr_ownerSID and
1171 cr_groupSID. Change throughout. Add members ownerSID and groupSID.
1172 Declare new method GetPosixPerms.
1173
7a332fb8
CV
11742009-12-17 Corinna Vinschen <corinna@vinschen.de>
1175
1176 * filemanip.cc (nt_wfopen): Only call nt_sec.SetPosixPerms if we have
1177 WRITE_DAC access.
1178 * mkdir.cc (mkdir_p): Ditto.
1179
21aa9a8b
CV
11802009-12-17 Corinna Vinschen <corinna@vinschen.de>
1181
1182 * filemanip.cc (nt_wfopen): Fix requested access rights. Retry
1183 without WRITE_DAC access on access denied. Add comment.
1184 * io_stream_cygfile.cc (io_stream_cygfile::set_mtime_and_mode): Ditto.
1185 * mkdir.cc (mkdir_p): Ditto.
1186 * mklink2.cc (mkcygsymlink_nt): Ditto.
1187
c459d893
CV
11882009-12-17 Corinna Vinschen <corinna@vinschen.de>
1189
1190 * localdir.cc (LocalDirSetting::save): Call mkdir_p with isadir set
1191 since /var/log is a dir.
1192
32049a60
CV
11932009-12-16 Corinna Vinschen <corinna@vinschen.de>
1194
1195 * UserSettings.cc (UserSettings::open_settings): Never add more than
1196 one slash.
1197 * filemanip.cc (tfx_chars): Align to Cygwin's transformation table.
1198 * localdir.cc (LocalDirSetting::save): Call mkdir_p with DOS path.
1199
ab9a95fc
CF
12002009-12-16 Christopher Faylor <me+cygwin@cgf.cx>
1201
1202 * package_message.h: New file.
1203
f38044ff
CF
12042009-12-13 Christopher Faylor <me+cygwin@cgf.cx>
1205
1206 * IniDBBuilder.h (buildMessage): Define for base class.
1207 * IniDBBuilderPackage.cc (IniDBBuilderPackage::buildMessage): Define.
1208 * IniDBBuilderPackage.h (IniDBBuilderPackage::buildMessage): Declare.
1209 * PickPackageLine.cc: Pass pointer to package to "pick" throughout,
1210 where appropriate.
1211 * PickView.cc: Ditto.
1212 * install.cc: Ditto.
1213 * package_meta.cc: Ditto.
1214 * prereq.cc: Ditto.
1215 * package_version.cc: Ditto.
1216 (packageversion::pick): Add pkg pointer as second argument. Display
1217 message where appropriate.
1218 * package_version.h (packageversion::pick): Add pkg pointer as second
1219 argument.
1220 * package_meta.h (packagemeta::mesage): Define.
1221 (packagemeta::set_message): Define.
1222 * inilex.ll: Properly return MESSAGE token.
1223 * iniparse.yy: Handle message: keyword.
1224
cc7a5bf5
DK
12252009-12-08 Dave Korn <dave.korn.cygwin@gmail.com>
1226
1227 * localdir.cc (offer_to_create): New function.
1228 (browse_cb): Handle selection changed and validate failed
1229 callbacks, and call offer_to_create where appropriate.
1230 (browse): Set new dialog style flags in browser info.
1231 (LocalDirPage::OnNext): Replace call to mkdir_p with offer to
1232 create or error message dialog display, allow proceeding to
1233 chooser even if local dir does not exist in unattend mode or
1234 if user insists, and fix small memory leak.
1235
1236 * res.rc (IDS_MAYBE_MKDIR, IDS_CANT_MKDIR, IDS_NO_CWD): Define new
1237 string resources.
1238 * resource.h (IDS_MAYBE_MKDIR, IDS_CANT_MKDIR, IDS_NO_CWD): Define
1239 corresponding resource ID numbers.
1240
a5405502
CV
12412009-12-03 Corinna Vinschen <corinna@vinschen.de>
1242
1243 * main.cc (WinMain): Disable running on Windows 9x. Show message box
1244 instead and exit.
1245
98756d2f
DK
12462009-12-03 Dave Korn <dave.korn.cygwin@gmail.com>
1247
1248 (ChooserPage::createListview): When nothing is found in the "All"
1249 category, pass an empty static dummy category object to the PickView
1250 constructor, instead of trying to dereference not-found iterator.
1251
f72d5840
CV
12522009-11-23 Corinna Vinschen <corinna@vinschen.de>
1253
1254 * io_stream_cygfile.cc (io_stream_cygfile::get_size): Don't try to
1255 close invalid handle.
1256 * io_stream_file.cc (io_stream_file::get_size): Ditto
1257
e1751ab2
DK
12582009-11-22 Dave Korn <dave.korn.cygwin@gmail.com>
1259
1260 * threebar.cc (ThreeBarProgressPage::OnMessageApp): Don't loop forever
1261 retrying ini file download/parse if it errors in unattended mode.
1262
513f7781
DK
12632009-11-22 Dave Korn <dave.korn.cygwin@gmail.com>
1264
1265 * package_meta.cc (CategoryOption): New StringOption for '-C'.
1266 (parseNames): New helper subroutine abstracts string parsing from ...
1267 (packagemeta::isManuallyWanted): Use it, and check for category names
1268 from CategoryOption as well as individual package names.
1269 * package_db.cc (packagedb::fillMissingCategory): Don't check for
1270 manually-wanted packages until after initialising all the categories.
1271
2b94fe1e
DK
12722009-11-04 Dave Korn <dave.korn.cygwin@gmail.com>
1273
1274 * localdir.cc (LocalDirSetting::LocalDirSetting): Restore -l option.
1275
da434346
DK
12762009-11-04 Dave Korn <dave.korn.cygwin@gmail.com>
1277
1278 * site.cc: Add #include of BoolOption header from libgetopt.
1279 (OnlySiteOption): New BoolOption for command-line -O option.
1280 (get_site_list): Respect BoolOption by not downloading mirror
1281 list, nor using nor updating cached mirrors.
1282
c7c7a4e0
DK
12832009-11-04 Dave Korn <dave.korn.cygwin@gmail.com>
1284
1285 * download.cc (do_download_thread): Only retry an incomplete download
1286 a limited number of times in unattended mode.
1287
9e11837b
DK
12882009-11-04 Dave Korn <dave.korn.cygwin@gmail.com>
1289
1290 * main.cc (main_display): Use apartment-, not multi- threading model
1291 when initialiseing COM.
1292
64cf790e
CV
12932009-11-04 Corinna Vinschen <corinna@vinschen.de>
1294
1295 * localdir.cc (browse): Make title text depend on what we do.
1296 (LocalDirPage::OnNext): If we plan to download, try to create directory
1297 before cd'ing into it.
1298
89cc2408
CV
12992009-11-03 Corinna Vinschen <corinna@vinschen.de>
1300
1301 * mkdir.cc: Include sys/stat.h unconditionally.
1302 (mkdir_p): Add S_IFDIR flag in call to nt_sec.SetPosixPerms.
1303 * win32.cc: Include sys/stat.h.
1304 (NTSecurity::SetPosixPerms): Add CREATOR OWNER, CREATOR GROUP, and
1305 Everyone inheritance-only entries when setting a directory DACL.
1306 (NTSecurity::initialiseWellKnownSIDs): Create SIDs for CREATOR OWNER and
1307 CREATOR GROUP.
1308 * win32.h (class NTSecurity): Add members ownerSID and groupSID.
1309
3e805913
CV
13102009-10-03 Andy Koppe <andy.koppe@gmail.com>
1311
1312 * main.cc (main): Make sure C runtime uses same codepage as GUI.
1313
0188fce5
CF
13142009-09-20 Christopher Faylor <me+cygwin@cgf.cx>
1315
1316 * main (set_cout): Really do attach to a console if stdout is "bad".
1317
8bc8a102
CF
13182009-09-18 Andy Koppe <andy.koppe@gmail.com>
1319
1320 * root.cc (string orig_root_dir): New variable.
1321 (check_if_enable_next): Show warning against installing Cygwin into
1322 disk root only if the root directory has actually been changed.
1323 * res.rc: Make the root dir warning a bit more meaningful, and refrain
1324 from using uppercase.
1325
13262009-09-18 Christopher Faylor <me+cygwin@cgf.cx>
1327
1328 * choose.cc (ChooserPage::OnBack): Revert to non-maximized when
1329 returning to mirror from package selection.
1330
ca09f44c
DK
13312009-09-18 Dave Korn <dave.korn.cygwin@gmail.com>
1332
1333 * site.cc (get_site_list): Use empty string if user settings
1334 return NULL pointer for cached mirrors list.
1335 (SiteSetting::getSavedSites): Do nothing if user settings return
1336 NULL pointer for last mirror URL.
1337
83ab685b
CF
13382009-08-21 Christopher Faylor <me+cygwin@cgf.cx>
1339
1340 * site.cc (SiteSetting::registerSavedSite): Fix comment.
1341
0cbac692
CF
13422009-07-03 Christopher Faylor <me+cygwin@cgf.cx>
1343
1344 * main.cc (set_cout): Don't reset stdout if we already have a stdout.
1345
7411af0f
CF
13462009-07-03 Christopher Faylor <me+cygwin@cgf.cx>
1347
1348 * choose.cc (ChooserPage::ChooserPage): Use more specific name for
1349 saving window settings.
1350 (ChooserPage::~ChooserPage): Ditto.
1351
0baffe9a
DK
13522009-07-01 Dave Korn <dave.korn.cygwin@gmail.com>
1353
1354 * PickView.h (PickView::total_delta_x): New int member.
1355 (PickView::set_header_column_order): Add prototype.
1356 * PickView.cc (PickView::set_header_column_order): New function,
1357 broken out from ...
1358 (PickView::set_headers): ... here. Call it.
1359 (PickView::init_headers): Apply total_delta_x to last_col width.
1360 (PickView::PickView): Initialise new total_delta_x member to zero.
1361 (PickView::WindowProc): Use set_header_column_order to find and
1362 adjust final column for both sets of headers.
1363
ca2b7505
CF
13642009-06-29 Christopher Faylor <me+cygwin@cgf.cx>
1365
1366 * SourceSetting.cc (SourceSetting::SourceSetting): Restore proper
1367 remembrane of last source setting.
1368 * choose.cc (ChooserPage::ChooserPage): Potentially retrieve dialog
1369 placement info.
1370 (ChooserPage::~ChooserPage): Save geometry settings if the user moved
1371 or resized the page.
1372 (ChooserPage::PlaceDialog): Rename from MaximizeDialog. Accommodate
1373 changed user placement settings.
1374 (ChooserPage::OnActivate): MaximizeDialog -> PlaceDialog.
1375 (ChooserPage::OnNext): Ditto.
1376 * choose.h (ChooserPage::~ChooserPage): Define.
1377 (ChooserPage::cmd_show): Delete.
1378 (ChooserPage::saved_geom): New field.
1379 (ChooserPage::window_placement): Ditto.
1380 (ChooserPage::pre_chooser_placement): Ditto.
1381 (ChooserPage::PlaceDialog): Rename from MaximizeDialog.
1382
7c863922
CF
13832009-06-28 Christopher Faylor <me+cygwin@cgf.cx>
1384
1385 * ConnectionSetting.cc (ConnectionSetting::ConnectionSetting): Remove
1386 old code which no longer makes sense when run from a constructor.
1387 * SourceSetting.cc (SourceSetting::SourceSetting): Ditto.
1388 * localdir.cc (LocalDirSetting::LocalDirSetting): Ditto. Fix typo
1389 which caused saved settings to be ignored.
1390
127febea
CF
13912009-06-28 Christopher Faylor <me+cygwin@cgf.cx>
1392
1393 * UserSettings.cc (UserSettings::UserSettings): settings.rc -> setup.rc.
1394
e36b0f1e
CV
13952009-06-28 Corinna Vinschen <corinna@vinschen.de>
1396
1397 * desktop.cc (DesktopSetupPage::OnInit): Drop CoInitialize call here.
1398 * main.cc (main_display): Use InitCommonControlsEx rather than
1399 InitCommonControls per MSDN. Call CoInitializeEx and create IShellLink
1400 instance here to workaround a problem on Windows 7. Release IShellLink
1401 instance and call CoUninitialize on exit.
1402 * mklink.cc (sl): Change to global variable. Drop call to
1403 CoCreateInstance here. Check if sl is valid before using it.
1404
f26f525f
CF
14052009-06-27 Christopher Faylor <me+cygwin@cgf.cx>
1406
1407 Preliminary option handling revamp.
1408 Throughout, change load/save methods to constructors/destructors which
1409 use new UserSettings methods. Do not inherit from UserSetting class.
1410 * KeysSetting.cc (ExtraKeysSetting *ExtraKeysSetting::global): Define.
1411 (ExtraKeysSetting::ExtraKeysSetting): Initialize some class members use
1412 new UserSettings methods.
1413 (ExtraKeysSetting::~ExtraKeysSetting): Use new UserSettings method.
1414 * Makefile.am (setup_SOURCES): Eliminate UserSetting.h and
1415 UserSetting.cc.
1416 * UserSettings.cc: Complete rewrite. Implements new UserSettings
1417 class methods.
1418 * UserSettings.h: Complete rewrite. Defines new UserSettings class
1419 methods.
1420 * crypto.cc (ExtraKeys): Delete.
1421 (add_key_from_sexpr): Use ExtraKeysSetting::instance rather than
1422 ExtraKeys.
1423 (verify_ini_file_sig): Ditto.
1424 * io_stream.h (io_stream): Define virtual << operators.
1425 * localdir.cc (localDir): Delete.
1426 * main.cc: Include headers which declar new dynamically invoked
1427 classes.
1428 (main_display): New function. Controls order of option setting and
1429 property page setup. Add new class invocations to force option setting
1430 initializtion.
1431 (main): Invoke new UserSettings class constructor to populate new
1432 settings class. Call main_display() to do most of the setup work.
1433 Call Settings.save () to save all settings.
1434 * net.cc (theSetting): Delete.
1435 * site.cc (SiteSetting::save): Record whether we've saved the
1436 information already.
1437 (get_site_list): Just use value returned from new UserSettings method
1438 rather than parsing a file.
1439 (SiteSetting::getSavedSites): Ditto.
1440 (write_cache_list): Use UserSettings operator to store mirror cache.
1441 (save_cache_file): Ditto.
1442 * source.cc (theSetting): Delete.
1443
1444 * win32.h: gcc-4 accommodation.
1445
9d0a3d8a
DK
14462009-06-26 Dave Korn <dave.korn.cygwin@gmail.com>
1447
1448 * res.rc (SETUP_STANDARD_DIALOG_W, SETUP_STANDARD_DIALOG_H,
1449 SETUP_SMALL_DIALOG_W, SETUP_SMALL_DIALOG_H): Add constant defines
1450 for dialog sizes.
1451 (SETUP_STANDARD_DIALOG_DIMS, SETUP_SMALL_DIALOG_DIMS): Add helper
1452 macros for (W,H) pairs of dimensions.
1453 (SETUP_HEADICON_X): New global constant define.
1454 (IDD_SOURCE, IDD_VIRUS, IDD_LOCAL, IDD_ROOT, IDD_SITE, IDD_NET,
1455 IDD_INSTATUS, IDD_PROXY_AUTH, IDD_NET_AUTH, IDD_DESKTOP,
1456 IDD_FTP_AUTH DIALOG, IDD_DROPPED): Use the above for dialog sizes,
1457 horizontal rules and icon positioning.
1458 (SETUP_KPCE_W): New define for radio-button size.
1459 (SETUP_VIEWCAP_W, SETUP_VIEWCAP_X, SETUP_VIEW_W, SETUP_VIEW_X,
1460 SETUP_EXP_X, SETUP_CURR_X, SETUP_PREV_X, SETUP_KEEP_X): Add defines
1461 for right-aligned controls.
1462 (SETUP_SEARCH_X, SETUP_SEARCH_W, SETUP_SEARCHTEXT_X,
1463 SETUP_SEARCHTEXT_W, SETUP_CLEAR_X, SETUP_CLEAR_W): Likewise defines
1464 for left-aligned controls.
1465 (IDD_CHOOSE): Use all the above, and reformat with whitespace
1466 between args for clarity.
1467
1789ef54
CV
14682009-06-26 Corinna Vinschen <corinna@vinschen.de>
1469
1470 * Makefile.am (setup_LDADD): Add -lshlwapi.
1471 * PickView.cc: Include shlwapi.h.
1472 (PickView::setViewMode): Compare package name with search string
1473 case-insensitive.
1474 (PickView::insert_category): Ditto.
1475
557b4e65
CV
14762009-06-26 Corinna Vinschen <corinna@vinschen.de>
1477
1478 * script.cc (init_run_script): Don't set $HOME to /tmp. It breaks
1479 mkpasswd -c.
1480
46cf12cd
CV
14812009-06-25 Corinna Vinschen <corinna@vinschen.de>
1482
1483 * script.cc (init_run_script): Reinstantiate accidentally removed
1484 setting of sh.
1485
b56d411d
CF
14862009-06-22 Christopher Faylor <me+cygwin@cgf.cx>
1487
1488 * script.cc (init_run_script): Revert to initializing cmd based on OS
1489 type.
1490
c14feb84
CV
14912009-06-22 Corinna Vinschen <corinna@vinschen.de>
1492
1493 * script.cc (Script::run): Start bash without -c option.
1494
00fa5f6c
CF
14952009-06-20 Christopher Faylor <me+cygwin@cgf.cx>
1496
1497 * threebar.cc (ThreeBarProgressPage::ins_dialog): Move variable to more
1498 appropriate class.
1499 (ThreeBarProgressPage::MaximizeDialog): Move function to more
1500 appropriate class.
1501 (ThreeBarProgressPage::OnMessageApp): Remove MaximizeDialog calls.
1502 * threebar.h: Remove maximize handling.
1503 * choose.cc (ChooserPage::ins_dialog): New variable.
1504 (ChooserPage::MaximizeDialog): New function.
1505 (ChooserPage::ChooserPage): Remove unneeded handling of nCmdShow.
1506 (ChooserPage::OnActivate): Maximize chooser page via MaximizeDialog.
1507 (ChooserPage::OnNext): Revert chooser page to normal before returning.
1508 * main.cc (main): Don't pass cmd_show to ChooserPage.
1509 * propsheet.cc (PropSheetProc): Accommodate change in class for
1510 SetHwndDialog.
1511
5a85457b
CF
15122009-06-20 Christopher Faylor <me+cygwin@cgf.cx>
1513
1514 * script.cc (shells): Delete.
1515 (cmd): Just assign to "cmd.exe" since we're always running on NT now.
1516 (sanitize_PATH ): New function.
1517 (init_run_script): Ensure that we're only called once. Strip
1518 environment of non-pertinent stuff. Call sanitize_PATH to remove
1519 non-standard stuff from the PATH. Set up a few standard environment
1520 variables.
1521
b0bb51b4
CV
15222009-06-16 Corinna Vinschen <corinna@vinschen.de>
1523
1524 * mount.cc (create_install_root): Don't load mount table again.
1525 (read_mounts_nt): Don't break loop, rather continue when not being
1526 able to open "Cygwin" registry key.
1527
ed1f007a
CF
15282009-06-03 Ralph Hempel <rhempel@bmts.com>
1529
1530 * source.cc: Add support for both -D and -L on the command line.
1531
7cb7c06e
CV
15322009-06-03 Corinna Vinschen <corinna@vinschen.de>
1533
1534 * filemanip.cc (unlink): Rename from DeleteFileW. Take additional
1535 parameter to indicate file type to unlink. Use in flags given to
1536 NtCreateFile.
1537 (DeleteFileW): Just call unlink from here with FILE_NON_DIRECTORY_FILE
1538 flag.
1539 (RemoveDirectoryW): Ditto with FILE_DIRECTORY_FILE flag.
1540
1eb4caec
CW
15412009-05-30 Charles Wilson <cygwin@cwilson.fastmail.fm>
1542
1543 * script.cc (Script::run): Really start bash with --norc
1544 --noprofile options.
1545
b7940eb5
CV
15462009-05-13 Corinna Vinschen <corinna@vinschen.de>
1547
1548 * script.cc (Script::run): Start bash with --norc --noprofile options.
1549
94f52d39
CV
15502009-05-13 Corinna Vinschen <corinna@vinschen.de>
1551
1552 * filemanip.cc (struct _FILE_RENAME_INFORMATION): Remove definition.
1553 * io_stream_cygfile.cc (io_stream_cygfile::io_stream_cygfile): Set
1554 default permission for .exe files to 0755.
1555 (io_stream_cygfile::mklink): Try to create real hardlink first. Add
1556 comment.
1557 * mklink2.cc (mkcyghardlink): New function to create real hardlink.
1558 * mklink2.h (mkcyghardlink): Declare.
1559 * mount.cc (from_fstab_line): Set got_usr_bin and got_usr_lib flags
1560 if /usr/bin and /usr/lib mount points exist in /etc/fstab.
1561 (add_usr_mnts): Only create mounts if corresponding got_usr_bin and
1562 got_usr_lib flags are not set.
1563 (read_mounts_nt): Initialize got_usr_bin and got_usr_lib to false.
1564 Always call add_usr_mnts, even if from_fstab succeeded.
1565 * ntdll.h: Include ddk/ntifs.h.
1566
b4473ece
CV
15672009-05-12 Corinna Vinschen <corinna@vinschen.de>
1568
1569 * filemanip.cc (GetFileAttributesW): Add accidentally omited
1570 OBJ_CASE_INSENSITIVE when creating OBJECT_ATTRIBUTES.
1571 (SetFileAttributesW): Ditto.
1572 (MoveFileW): Ditto.
1573 (DeleteFileW): Ditto.
1574 (RemoveDirectoryW): Ditto.
1575 (nt_wfopen): Ditto.
1576
e0fd9bd3
CF
15772009-05-11 Bryan Thrall <bryan.thrall@flightsafety.com>
1578
1579 * localdir.cc (load_dialog): Choose description string based on install
1580 type.
1581 * res.rc (IDD_LOCAL_DIR): Replace static description text with
1582 IDC_LOCAL_DIR_DESC.
1583 * resource.h (IDS_LOCAL_DIR_DOWNLOAD): New string resource id.
1584 (IDS_LOCAL_DIR_INSTALL): Likewise.
1585 (IDC_LOCAL_DIR_DESC): New text control resource id.
1586
15872009-05-11 Christopher Faylor <me+cygwin@cgf.cx>
1588
1589 * main.cc (set_cout): Simplify code a little.
1590
18d74072
CV
15912009-05-11 Bryan Thrall <bryan.thrall@flightsafety.com>
1592
1593 * choose.cc (ChooserPage::OnMessageCmd): Clear search filter when
1594 clear button clicked.
1595 * res.rc (IDD_CHOOSE_DIALOG): Add IDC_CHOOSE_CLEAR_SEARCH button.
1596 * resource.h (IDC_CHOOSE_CLEAR_SEARCH): New button resource ID.
1597
6dcfeb7d
CV
15982009-05-11 Corinna Vinschen <corinna@vinschen.de>
1599
1600 * UserSettings.cc (UserSettings::settingFileForLoad): Fix local load
1601 path strings.
1602 (UserSettings::settingFileForSave): Never store in cwd.
1603 * autoload.c (ntdll): Autoload ntdll.dll functions here.
1604 * desktop.cc (make_cygwin_bat): Use GetFileAttributesW rather than
1605 _waccess. Use nt_wfopen instead of _wfopen.
1606 (save_icon): Ditto.
1607 * filemanip.cc (get_file_size): Call io_stream::open with empty mode
1608 string to avoid opening file twice.
1609 (GetFileAttributesW): New function to replace Win32 function with
1610 equivalent function opening files with backup intent.
1611 (SetFileAttributesW): Ditto.
1612 (MoveFileW): Ditto.
1613 (DeleteFileW): Ditto.
1614 (RemoveDirectoryW): Ditto.
1615 (nt_wfopen): New function to replace _wfopen with equivalent function
1616 opening files with backup intent.
1617 * filemanip.h (nt_wfopen): Declare.
1618 * io_stream_cygfile.cc (io_stream_cygfile::io_stream_cygfile): Initalize
1619 lasterr to 0. Allow empty mode and don't open file, if so. Call
1620 nt_wfopen rather than _wfopen.
1621 (io_stream_cygfile::exists): Use GetFileAttributesW rather than
1622 _waccess.
1623 (io_stream_cygfile::get_size): Use CreateFileW/GetFileSize to get
1624 file size on NT.
1625 * io_stream_file.cc (io_stream_file::io_stream_file): Initalize lasterr
1626 to 0. Allow empty mode and don't open file, if so. Call nt_wfopen
1627 rather than _wfopen.
1628 (io_stream_file::exists): Use GetFileAttributesW rather than _waccess.
1629 (io_stream_file::remove): Don't try to remove non-existant file.
1630 (io_stream_file::get_size): Use CreateFileW/GetFileSize to get
1631 file size on NT. Add comment to keep track of 2GB border.
1632 * mkdir.cc: Remove function pointers for ntdll functions.
1633 (init_ntfuncs): Remove function.
1634 (mkdir_p): Drop call to init_ntfuncs. Call ntdll functions directly
1635 rather than over local function pointers.
1636 * ntdll.h: New file.
1637 * postinstall.cc (do_postinstall_reflector): Switch to admins group
ca2b7505 1638 as primary group after postinstall scripts have been written.
6dcfeb7d
CV
1639 Explain why.
1640 (do_postinstall): Add comment.
1641 * res.rc: Bump copyright date.
1642 * win32.h (class TokenGroupCollection): Remove.
1643 * win32.cc (TokenGroupCollection::populate): Remove.
1644 (TokenGroupCollection::find): Remove.
1645 (NTSecurity::setDefaultSecurity): Drop reading token groups. Just
1646 try to switch to admins group as primary group.
1647
4b47445f
CV
16482009-05-07 Corinna Vinschen <corinna@vinschen.de>
1649
1650 * package_db.cc (ConnectedLoopFinder::doIt): Revert patch from
1651 2008-08-29. Add dumb hardcoded algorithm to make sure base-cygwin
1652 and base-passwd are always the first packages in the postinstall
1653 executable order.
1654
8752dea2
CV
16552009-05-06 Corinna Vinschen <corinna@vinschen.de>
1656
1657 * install.cc (Installer::StandardDirs): Add /home with 1777 perms.
1658 * main.cc (main): Drop setting $CYGWIN to nontsec.
1659
059906b3
DK
16602009-04-24 Andrew Punch <andrew@magneticbooks.com.au>
1661
1662 * PickView.h: Add #include <string>.
1663 (PickView::SetPackageFilter): Add new function.
1664 (PickView::packageFilterString): Add new string data member.
1665 * PickView.cc (PickView::setViewMode): Use it to filter names.
1666 (PickView::insert_category): Likewise.
1667 (PickView::PickView): Initialise packageFilterString to blank.
1668 * res.rc (IDD_CHOOSE): Add IDC_CHOOSE_SEARCH_EDIT and
1669 IDC_CHOOSE_SEARCH_LABEL controls.
1670 (IDS_SEARCH_TOOLTIP): Add new string resource.
1671 * resource.h (IDS_SEARCH_TOOLTIP): New string resource ID.
1672 (IDC_CHOOSE_SEARCH_EDIT): New edit control ID.
1673 (IDC_CHOOSE_SEARCH_LABEL): Mew static text control ID.
1674 * choose.cc (ChooserControlsInfo[]): Add IDC_CHOOSE_SEARCH_LABEL
1675 and IDC_CHOOSE_SEARCH_EDIT controls to auto-resize list.
1676 (ChooserPage::OnInit): Add tooltip to search edit box.
1677 (ChooserPage::OnMessageCmd): Handle EN_CHANGE event from
1678 IDC_CHOOSE_SEARCH_EDIT.
1679
6bfd5236
DK
16802009-04-24 Dave Korn <dave.korn.cygwin@gmail.com>
1681
1682 * propsheet.cc (PropSheetWndProc): Re-enable hasMinRect.
1683
d29a864d
CV
16842009-04-23 Corinna Vinschen <corinna@vinschen.de>
1685
1686 * win32.h (NTSecurity::primaryGroupSID): Convert to a structure for
1687 direct usage in GetTokenInformation.
1688 (NTSecurity::osid): Remove.
1689 (NTSecurity::setAdminGroup): Declare.
1690 * win32.cc (NTSecurity::resetPrimaryGroup): Accommodate change to
1691 primaryGroupSID. Add log output.
1692 (NTSecurity::setAdminGroup): New method.
1693 (NTSecurity::setDefaultSecurity): Use local structures for getting
1694 TOKEN_USER and setting TOKEN_OWNER information. Accommodate change to
1695 primaryGroupSID. Slightly enhance log output.
1696 Only set primary group to Administrators group when installing for
1697 all users. Call setAdminGroup to do it.
1698
770e3aed
CV
16992009-04-22 Corinna Vinschen <corinna@vinschen.de>
1700
1701 * mklink2.cc (mkcygsymlink_nt): Allow 4K chars in symlink. Use strncat
1702 rather than strcat.
1703 * postinstall.cc (do_postinstall): Reset user token to original
1704 primary group.
d29a864d 1705 * win32.cc (NTSecurity::resetPrimaryGroup): New method.
770e3aed
CV
1706 (NTSecurity::setDefaultSecurity): Store original primary group in
1707 new NTSecurity member primaryGroupSID. Set primary group in user token
1708 to Administrators group for admin users. Align comment.
1709 * win32.h (class NTSecurity): Add member primaryGroupSID.
1710 (NTSecurity::resetPrimaryGroup): Declare.
1711
a03b43ad
CF
17122009-04-09 Christopher Faylor <me+cygwin@cgf.cx>
1713
1714 * main.cc (set_cout): Load AttachConsole dynamically to avoid using it
1715 on older Windows which don't support it.
1716
c8356810
CF
17172009-03-21 Christopher Faylor <me+cygwin@cgf.cx>
1718
1719 * LogFile.cc (LogFile::endEntry): Output messages to stdout.
1720 * main.cc (set_cout): New function. Sets stdout to console if one
1721 exists.
1722 (main): Redirect stdout to console if unattended_mode or help option is
1723 specified and no stdout is available.
1724
17252009-03-21 Terry Fleming <terrynfleming@gmail.com>
1726 Christopher Faylor <me+cygwin@cgf.cx>
1727
1728 * propsheet.cc (PropSheetWndProc): Detect a Window closing event and
1729 issue an "Are you sure" message.
1730
a2488a3c
CV
17312008-08-29 Corinna Vinschen <corinna@vinschen.de>
1732
1733 * package_db.cc (ConnectedLoopFinder::doIt): Add code to get a basic
1734 order into the dependency list. Add comment to explain why.
1735
ef3be327
BD
17362008-08-22 Brian Dessent <brian@dessent.net>
1737
1738 * KeysSetting.cc: Include string.h for memcpy et al.
1739 * filemanip.cc: Include stdlib.h for for mbstowcs.
1740 * io_stream_cygfile.h: Update cygmkdir_p prototype for mode_t.
1741 * mount.cc (conv_fstab_spaces): Silence gcc 4.3 warning ("parentheses
1742 around assignment used as truth value").
1743
e0a4fb63
CV
17442008-08-20 Corinna Vinschen <corinna@vinschen.de>
1745
1746 * install.cc (Installer::StandardDirs): Additionally create /var/log
1747 dir. Set mode of /var/log and /var/run to 01777.
1748 * localdir.cc (LocalDirSetting::save): Create /var/log with 01777
1749 permissions before creating setup.log files.
1750
be617b59
CV
17512008-08-20 Corinna Vinschen <corinna@vinschen.de>
1752
1753 * io_stream_cygfile.cc (io_stream_cygfile::set_mtime_and_mode):
1754 Accommodate SetPosixPerms being method of nt_sec.
1755 * mkdir.cc (mkdir_p): Ditto.
1756 * mklink2.cc (mkcygsymlink_nt): Ditto.
1757 * win32.cc: Slightly rearrange.
1758 (NTSecurity::SetPosixPerms): Make SetPosixPerms method of NTSecurity
1759 rather than stand-alone function. Remove dynamic allocation for
1760 security descriptors in favor of static allocation. Drop out
1761 preliminary if well-known SIDs are not initialized. Slightly change
1762 and rearrange comments. Add creating NULL SID ACE for special
1763 permissions.
1764 (NTSecurity::initialiseWellKnownSIDs): New function, replacing
1765 NTSecurity::initialiseEveryOneSID. Initialize all well-known SIDs
1766 here. Set wellKnownSIDsinitialized to true on success.
1767 (NTSecurity::setDefaultDACL): Don't call initialiseEveryOneSID. Change
1768 comment. Drop setting failed. Don't open process token here.
1769 (NTSecurity::setBackupPrivileges): New function.
1770 (NTSecurity::setDefaultSecurity): Call initialiseWellKnownSIDs.
1771 Open process token here. Disable setting primary group. Add comment
1772 to explain why.
1773 * win32.h (SetPosixPerms): Move to NTSecurity.
1774 (class NTSecurity): Add SetPosixPerms method. Make all SIDs private
1775 again. Make NoteFailedAPI private. Add setBackupPrivileges method.
1776 Rename usid to UsersSID. Remove failed method and _failed member.
1777 Add wellKnownSIDsinitialized accessors and _wellKnownSIDsinitialized
1778 member.
1779
b41c2908
CV
17802008-08-19 Corinna Vinschen <corinna@vinschen.de>
1781
1782 * install.cc (struct std_dirs_t): New type.
1783 (class Installer): Change type of StandardDirs to std_dirs_t.
1784 (Installer::StandardDirs): Store filename and mode.
1785 (do_install_thread): Call io_stream::mkpath_p with name and mode from
1786 Installer::StandardDirs.
1787 * main.cc (main): Call setDefaultSecurity on global nt_sec.
1788 * IOStreamProvider.h (IOStreamProvider::mkdir_p): Add mode parameter.
1789 * LogFile.cc (LogFile::log_save): Call io_stream::mkpath_p with 0755
1790 mode.
1791 * UserSettings.cc (UserSettings::settingFileForSave): Ditto.
1792 * desktop.cc (make_link): Ditto.
1793 * download.cc (download_one): Ditto.
1794 * ini.cc (do_remote_ini): Ditto.
1795 (do_ini_thread): Ditto.
1796 * package_db.cc (packagedb::flush): Ditto.
1797 * archive.cc (archive::extract_file): Ditto. Call set_mtime_and_mode
1798 with mode from archive. Add code to handle directory permissions as
1799 well.
1800 * archive_tar.cc (archive_tar::get_mtime): Return time_t. Reformat.
1801 (archive_tar::get_mode): New method.
1802 * archive_tar.h (class archive_tar_file): Fix prototypes. Replace
1803 prototype for set_mtime with prototype for set_mtime_and_mode.
1804 (class archive_tar): Ditto.
1805 * archive_tar_file.cc (archive_tar_file::get_mtime): Return time_t.
1806 (archive_tar_file::get_mode): New method returning mode from tar header.
1807 * compress_bz.cc (compress_bz::set_mtime_and_mode): Replace set_mtime.
1808 (compress_bz::get_mtime): Return time_t.
1809 (compress_bz::get_mode): New function.
1810 * compress_gz.cc: Ditto.
1811 * compress_lzma.cc: Ditto.
1812 * io_stream.cc (io_stream::mkpath_p): Take additional file mode.
1813 Call mkdir_p with additional file mode.
1814 * io_stream_cygfile.cc (CygFileProvider::mkdir_p): Take additional file
1815 mode.
1816 (cygmkdir_p): Ditto. Call mkdir_p with additional file mode.
1817 (io_stream_cygfile::set_mtime_and_mode): Replace set_mtime. Call
1818 SetPosixPerms.
1819 * io_stream_file.cc (FileProvider::mkdir_p): Take additional file mode.
1820 (io_stream_file::set_mtime_and_mode): Replace set_mtime.
1821 * mkdir.cc (init_ntfuncs): New function to initialize function pointers
1822 from ntdll.dll.
1823 (mkdir_p): Take additional file mode. On NT, use NT functions to create
1824 directory. Call SetPosixPerms.
1825 * compress_bz.h: Change prototypes accordingly.
1826 * compress_gz.h: Ditto.
1827 * compress_lzma.h: Ditto.
1828 * io_stream.h: Ditto.
1829 * io_stream_cygfile.h: Ditto.
1830 * io_stream_file.h: Ditto.
1831 * io_stream_memory.h: Ditto.
1832 * mkdir.h: Ditto.
1833 * mklink2.cc (mkcygsymlink_nt): Open file with STANDARD_RIGHTS_ALL
1834 access and FILE_FLAG_BACKUP_SEMANTICS flag. Call SetPosixPerms.
1835 * mount.cc (from_fstab): Open file with FILE_FLAG_BACKUP_SEMANTICS.
1836 * script.cc (OutputLog::OutputLog): Call io_stream::mkpath_p with 0755
1837 mode. Open file with FILE_FLAG_BACKUP_SEMANTICS.
1838 * win32.cc (SetPosixPerms): New function to set POSIX-like permissions.
1839 (nt_sec): New global NTSecurity variable.
1840 (NTSecurity::setDefaultDACL): Open token with TOKEN_ADJUST_PRIVILEGES.
1841 (NTSecurity::setDefaultSecurity): Enable SE_BACKUP_NAME and
1842 SE_RESTORE_NAME privileges if available.
1843 * win32.h (SetPosixPerms): Add prototype.
1844 (class NTSecurity): Make everyOneSID and administratorsSID public.
1845 (nt_sec): Declare.
1846
65288dc7
CV
18472008-08-14 Corinna Vinschen <corinna@vinschen.de>
1848
1849 * mount.cc (unconvert_slashes): New inline function.
1850 (skip_ws): New inline function.
1851 (find_ws): New inline function.
1852 (conv_fstab_spaces): New inline function.
1853 (from_fstab_line): New function to read single line from fstab file.
1854 (from_fstab): New function to read /etc/fstab file and fill mount
1855 table.
1856 (read_mounts_nt): Call from_fstab after getting setup/rootdir from
1857 registry. Only call add_usr_mnts if no fstab file found.
1858
1ae1adf7
CV
18592008-08-13 Corinna Vinschen <corinna@vinschen.de>
1860
1861 * install.cc (Installer::installOne): Skip 46 bytes type tar package
1862 silently.
1863
53d33c5d
CV
18642008-08-13 Corinna Vinschen <corinna@vinschen.de>
1865
1866 * install.cc (Installer::installOne): Use MoveFileExW on NT. Special
1867 case for bug in Windows 2000.
1868 * package_meta.cc (packagemeta::uninstall): Use wide char file functions
1869 on NT.
1870 * win32.h (VersionInfo::major): New method.
1871 (VersionInfo::minor): New method.
1872 (OSMajorVersion): Define.
1873 (OSMinorVersion): Define.
1874
2f0315ad
CV
18752008-08-12 Corinna Vinschen <corinna@vinschen.de>
1876
1877 Revamp for Cygwin 1.7.
1878 * desktop.cc (make_cygwin_bat): Use wide char file functions on NT.
1879 (save_icon): Ditto.
1880 * filemanip.cc (tfx_chars): New char table for wide char transformation
1881 of reserved FS chars to UNICODE private use area.
1882 (transform_chars): New static function.
1883 (mklongpath): New function to convert multibyte path to wide char
1884 path with long path prefix.
1885 * filemanip.h (mklongpath): Declare.
1886 * ini.h (SETUP_INI_FILENAME): Use setup.ini filenames as defined in
1887 real life (setup-2.ini/setup.ini).
1888 (SETUP_BZ2_FILENAME): Ditto.
1889 * install.cc (do_install_thread): Don't create registry mount points
1890 on NT, rather create setup/rootdir entry.
1891 * io_stream_cygfile.cc: Throughout use wide char file functions on NT.
1892 (io_stream_cygfile::w_str): New method to create wide char path.
1893 * io_stream_cygfile.h (class io_stream_cygfile): Remove lmode member.
1894 Add wname member and w_str method.
1895 * io_stream_file.cc: Throughout use wide char file functions on NT.
1896 (io_stream_file::w_str): New method to create wide char path.
1897 * io_stream_file.h (class io_stream_file): Remove lmode member.
1898 Add wname member and w_str method.
1899 * mkdir.cc (mkdir_p): Use wide char file functions on NT.
1900 * mklink2.cc (mkcygsymlink_9x): Rename from mkcygsymlink. Make static.
1901 (mkcygsymlink_nt): New static function.
1902 (mkcygsymlink): Just call mkcygsymlink_9x or mkcygsymlink_nt dependent
1903 on OS.
1904 * mount.cc (CYGWIN_INFO_CYGWIN_SETUP_REGISTRY_NAME): Define.
1905 (remove1): Move to earlier point in file to avoid declaration.
1906 (remove_mount): Ditto. Make static.
1907 (create_install_root): New function to create setup/rootdir registry
1908 value on NT.
1909 (read_mounts_9x): Rename from read_mounts. Make static. Conditionalize
1910 for OS.
1911 (add_usr_mnts): New static function.
1912 (read_mounts_nt): Ditto, to read mounts on NT.
1913 (read_mounts): Just call read_mounts_nt or read_mounts_9x dependent on
1914 OS.
1915 (set_root_dir): On NT, call read_mounts.
1916 (cygpath): Only add slash for non-root mount to avoid multiple slashes
1917 in resulting path (invalid in long path names).
1918 * mount.h (find_mount): Drop declaration.
1919 (remove_mount): Ditto.
1920 (create_install_root): Add declaration.
1921 (read_mounts): Accommodate new parameter.
1922 * package_db.cc (chosen_db_task): New global variable.
1923 * package_db.h (chosen_db_task): Declare.
1924 * root.cc (check_if_enable_next): Don't use get_root_dir here to
1925 avoid having to call save_dialog in RootPage::OnMessageCmd.
1926 (GetDlgItemRect): New static inline function.
1927 (SetDlgItemRect): Ditto.
1928 (load_dialog): On NT, stretch "Install For" block to full dialog width
1929 and hide "Default Text File Type" block.
1930 (save_dialog): On NT set root_text always to IDC_ROOT_BINARY.
1931 (RootPage::OnMessageCmd): Remove call to save_dialog.
1932 (RootPage::OnNext): Initialize packagedb here the first time, to
1933 avoid fetching wrong data from different previous installation.
1934 * source.cc (save_dialog): Don't initialize packagedb here, rather
1935 just memorize setting in chosen_db_task for the deferred initialization
1936 in RootPage::OnNext.
1937
0407753c
DK
19382008-08-07 Dave Korn <dave.korn.cygwin@gmail.com>
1939
1940 Implement command-line selection of packages to install and make
1941 unattended mode deal with any dialogs that might arise. A joint
1942 effort synthesized from contributions by:
1943
1944 Dr. Frank Lee <rl201@cam.ac.uk>
1945 Bryan Thrall <bryan.thrall@flightsafety.com>
1946 Kohsuke Kawaguchi <kk@kohsuke.org>
1947 Dave Korn <dave.korn.cygwin@gmail.com>
1948
1949 * install.cc (rebootneeded): Don't define statically here.
1950 (do_install_thread): Let exit_msg reflect rebootneeded.
1951 * main.cc (main): If rebootneeded, log it when exiting.
1952 * msg.cc (mbox): In unattended_mode, choose and log default answer.
1953 * package_db.cc (packagedb::fillMissingCategory): Iterate over all
1954 packages adding those selected by packagemeta::isManuallyWanted to
1955 base category so that command-line selections are installed.
1956 * package_meta.cc (PackageOption): Add new StringOption to allow
1957 command-line selection of packages to add to base install.
1958 (packagemeta::isManuallyWanted): New function tests if package was
1959 selected on command-line.
ca2b7505 1960 (packagemeta::addToCategoryBase): New function adds package to
0407753c
DK
1961 "base" category.
1962 * state.cc (rebootneeded): Define here non-static.
1963 * state.h (rebootneeded): Declare here with extern linkage.
1964 * threebar.cc (ThreeBarProgressPage::MaximizeDialog): Don't change
1965 size when running in unattended mode.
1966
da60e4b2
CF
19672008-08-05 Christopher Faylor <me+cygwin@cgf.cx>
1968
1969 * UserSettings.cc (UserSettings::settingFileForLoad): Look locally for
1970 settings before looking outside of current directory.
1971 * choose.cc (ChooserPage::ChooserPage): Record the property sheet's
1972 current show state via new passed in parameter.
1973 * choose.h (ChooserPage::ChooserPage): Reflect change in argument list.
1974 (ChooserPage::nCmdShow): Define new element.
1975 * main.cc (main): Send current show state to Chooser.
1976 * package_version.cc (packageversion::set_requirements): Increase
1977 recursion check from 5 to 30.
1978 * propsheet.cc (PropSheetWndProc): Register hwndDlg with
1979 ThreeBarProgressPage.
1980 * threebar.cc (ControlAdjuster::ControlInfo): Initialize cmd_show_set.
1981 (ThreeBarProgressPage::MaximizeDialog): New function.
1982 (ThreeBarProgressPage::OnMessageApp): Call MaximizeDialog to maximize
1983 package selection screen and restore when done.
1984 * threebar.h (ThreeBarProgressPage::MaximizeDialog): Declare function.
1985 (ThreeBarProgressPage::cmd_show_set): Declare variable.
1986 (ThreeBarProgressPage::cmd_show): Declare variable.
1987 (ThreeBarProgressPage::ins_dialog): Declare variable.
1988 (ThreeBarProgressPage::SetHwndDialog): Define function.
1989
5bb88929
CW
19902008-07-22 Charles Wilson <cygwin@cwilson.fastmail.fm>
1991
1992 Add support for .tar.lzma files (decompress only).
1993
1994 * Makefile.am: Add new files.
1995 * compress.cc (compress::decompress): add support
1996 for compress_lzma.
1997 * compress_lzma.h: new file.
1998 * compress_lzma.cc: new file.
1999 * filemanip.cc (find_tar_ext): add support for
2000 .tar.lzma files.
2001 * install.cc (Installer::installOne): update comments.
2002 * lzma-sdk/LzmaDec.h: new file.
2003 * lzma-sdk/LzmaDec.c: new file.
2004 * lzma-sdk/Types.h: new file.
2005
5bc84ff1
CW
20062008-07-08 Charles Wilson <cygwin@cwilson.fastmail.fm>
2007
2008 * compress.cc (compress::decompress): clean up concrete
2009 decompressor objects on failure -- but in that case, do
2010 NOT destroy original io_stream.
2011 * compress_bz.h (compress_bz::release_original): new method.
2012 (owns_original): new member variable.
2013 * compress_bz.cc (compress_bz::release_original): new method.
2014 (compress_bz::compress_bz): take ownership of parent by default.
ca2b7505 2015 (compress_bz::~compress_bz): only delete original if
5bc84ff1
CW
2016 owns_original is true.
2017 * compress_gz.h (compress_gz::release_original): new method.
2018 (owns_original): new member variable.
2019 * compress_gz.cc (compress_gz::release_original): new method.
2020 (compress_gz::construct): take ownership of parent by default.
ca2b7505 2021 (compress_gz::~compress_gz): only delete original if
5bc84ff1
CW
2022 owns_original is true.
2023
fe25359c
DK
20242008-06-25 Dave Korn <dave.korn.cygwin@gmail.com>
2025
2026 * configure.in, gpg-error-config-fake: Revert previous removal.
2027
586f2b08
DK
20282008-06-25 Dave Korn <dave.korn.cygwin@gmail.com>
2029
2030 * net.cc: Correct stray CRLF.
2031
8f016701
DK
20322008-06-25 Dave Korn <dave.korn.cygwin@gmail.com>
2033
2034 * configure.in (ac_cv_path_GPG_ERROR_CONFIG): Remove nasty hack.
2035 * gpg-error-config-fake: Delete file obsoleted by de-hackification.
2036
1cc1fad4
CF
20372008-06-24 Christopher Faylor <me+cygwin@cgf.cx>
2038
2039 * configure.in: Disable shared library builds.
2040
be6622c0
CF
20412008-06-24 Christopher Faylor <me+cygwin@cgf.cx>
2042
2043 * Makefile.am: Make and install libraries into common location and use
2044 them from there.
2045 * configure.in: Find gpg-error-config in the libgpg-error/src
2046 subdirectory rather than using the host system's version. Set the
2047 prefix and exec_prefix to a common location for the subdirs so that
2048 useful files will be installed in a common location.
2049
dbfe3c19
DK
20502008-06-22 Dave Korn <dave.korn.cygwin@gmail.com>
2051
be6622c0
CF
2052 Merged across diffs between setup_crypto_branch_branchpoint and
2053 setup_crypto_branch_mergepoint2 from setup_crypto_branch.
dbfe3c19
DK
2054
2055 * crypto.cc, crypto.h, gpg-packet.cc, gpg-packet.h, KeysSetting.cc,
2056 KeysSetting.h, gpg-error-config-fake, cygwin.pub, cyg-pubkey.h,
be6622c0 2057 gpg-key-to-s-expr.sh: New files.
dbfe3c19 2058 * ini.cc, ini.h, resource.h, res.rc, netio.cc, Makefile.am,
be6622c0 2059 configure.ac, libgetopt++/src/OptionSet.cc: Modified files.
dbfe3c19 2060
a127a91e 20612008-06-21 Dave Korn <dave.korn.cygwin@gmail.com>
dbfe3c19 2062
ca2b7505 2063 * ini.cc (do_remote_ini): Revert misbegotten removal of
dbfe3c19
DK
2064 not-always-superfluous-after-all added slash in URLs.
2065
a127a91e 20662008-06-18 Dave Korn <dave.korn.cygwin@gmail.com>
dbfe3c19
DK
2067
2068 * gpg-packet.h (GPG_KEY_SEXPR_BUF_SIZE): Move from here ...
2069 * crypto.h (GPG_KEY_SEXPR_BUF_SIZE): ... to here.
2070 (GPG_KEY_MAX_COEFF_SIZE): Add related definition.
2071
a127a91e 20722008-06-18 Dave Korn <dave.korn.cygwin@gmail.com>
dbfe3c19
DK
2073
2074 * gpg-packet.cc (walk_packets_1): Check packet length field is
2075 valid sane and possible to avoid malicious manipulation.
2076 * ChangeLog: Corrected date on previous commit.
2077
a127a91e 20782008-06-18 Dave Korn <dave.korn.cygwin@gmail.com>
dbfe3c19 2079
ca2b7505 2080 * crypto.cc (add_key_from_sexpr): Use real buffer size, not debug
dbfe3c19
DK
2081 constant size.
2082
a127a91e 20832008-06-16 Dave Korn <dave.korn.cygwin@gmail.com>
dbfe3c19
DK
2084
2085 * crypto.cc (verify_ini_file_sig): Actually set init-once flag!
2086
a127a91e 20872008-06-16 Dave Korn <dave.korn.cygwin@gmail.com>
dbfe3c19
DK
2088
2089 * crypto.cc (KeepUntrustedKeysOption): Fix helpstring punctuation.
2090
a127a91e 20912008-06-16 Dave Korn <dave.korn.cygwin@gmail.com>
dbfe3c19
DK
2092
2093 * crypto.cc (verify_ini_file_sig): Fix two minor logic errors.
2094
a127a91e 20952008-06-16 Dave Korn <dave.korn.cygwin@gmail.com>
dbfe3c19
DK
2096
2097 * ini.h (current_ini_sig_name): Declare extern.
2098 * ini.cc (current_ini_sig_name): New variable.
2099 (NoVerifyOption): New boolean option.
2100 (do_remote_ini): If sig verification not disabled, attempt to
2101 download the matching sig file for any setup.bz2 or setup.ini
2102 and use it to verify or discard the download.
2103
a127a91e 21042008-06-16 Dave Korn <dave.korn.cygwin@gmail.com>
dbfe3c19
DK
2105
2106 * resource.h (IDS_SIG_INVALID, IDS_CRYPTO_ERROR): Reserve IDs for
2107 two new message strings.
2108 * res.rc (IDS_SIG_INVALID, IDS_CRYPTO_ERROR): Define the text.
2109
a127a91e 21102008-06-16 Dave Korn <dave.korn.cygwin@gmail.com>
dbfe3c19
DK
2111
2112 * Makefile.am (setup_SOURCES): Add new files crypto.cc, crypto.h,
2113 cyg-pubkey.h, gpg-packet.cc, gpg-packet.h. KeysSetting.cc and
2114 KeysSetting.h to the build.
2115 * crypto.cc, crypto.h, gpg-packet.cc, gpg-packet.h, KeysSetting.cc,
2116 KeysSetting.h: New files. Adds gpg sig verification support.
2117
a127a91e 21182008-06-16 Dave Korn <dave.korn.cygwin@gmail.com>
dbfe3c19
DK
2119
2120 * Makefile.am (DIST_SUBDIRS, SUBDIRS): Add libgpg-error and
2121 libgcrypt subdirs.
2122 (AM_CPPFLAGS): Add -I paths to generated headers in both and to
2123 shipped headers in libgcrypt.
2124 (setup_LDADD): Add libgpg-error.a and libgcrypt.a to final link.
2125
2126 * configure.in (ac_cv_path_GPG_ERROR_CONFIG): Preload into cache
2127 to fake out libgcrypt configure process.
2128 (AC_CONFIG_SUBDIRS): Add libgpg-error/ and libgcrypt/
2129
2130 * gpg-error-config-fake: New shell script to redirect libgcrypt
2131 sub-configure into looking for newly-built libgpg-error.
2132
a127a91e 21332008-06-16 Dave Korn <dave.korn.cygwin@gmail.com>
dbfe3c19
DK
2134
2135 * setup/libgpg-error/: Fresh import of upstream sources of
2136 libgpg-error-1.6.tar.bz2 from http://www.gnupg.org/
2137 * setup/libgcrypt/: Fresh import of upstream sources of
2138 libgcrypt-1.4.1.tar.bz2 from http://www.gnupg.org/
2139
a127a91e 21402008-06-16 Dave Korn <dave.korn.cygwin@gmail.com>
dbfe3c19
DK
2141
2142 * netio.cc (NetIO::set_url): Avoid double-free bug on delete
2143 by setting path to a strdup of url rather than using the same
2144 pointer value twice.
2145
a127a91e 21462008-06-16 Dave Korn <dave.korn.cygwin@gmail.com>
dbfe3c19
DK
2147
2148 * cygwin.pub: Add reference copy of Cygwin setup signing key.
2149 * gpg-key-to-s-expr.sh: New bash script. Outputs textual
2150 representation of public key in s-expr format.
2151 * cyg-pubkey.h: New header generated by the above from Cygwin
2152 setup signing key. Currently needs manual regeneration if key
2153 ever updated.
2154
2cae901b
BD
21552008-04-16 Brian Dessent <brian@dessent.net>
2156
2157 * mount.cc: Include malloc.h.
2158 (is_admin): Use alloca instead of a VLA in case
2159 GetTokenInformation is sensitive to alignment.
2160
784414bf
BD
21612008-04-15 Brian Dessent <brian@dessent.net>
2162
2163 * mount.cc (is_admin): Get explicit size of required buffer by
2164 calling GetTokenInformation first with NULL.
2165
9d44d4f7
BD
21662008-04-10 Brian Dessent <brian@dessent.net>
2167
2168 * Makefile.am (setup_LDFLAGS): Make sure static libbz2 and zlib
2169 are used.
2170
1db74bf0
BD
21712008-04-09 Brian Dessent <brian@dessent.net>
2172
2173 * README: flex and bison are required when building from CVS.
2174
09aa7d89
BD
21752008-04-08 Brian Dessent <brian@dessent.net>
2176
2177 * Makefile.am (snapshot): Provide default value of ${cygwinsite}
2178 if not set.
2179
60dfa7aa
BD
21802008-04-08 Brian Dessent <brian@dessent.net>
2181
2182 * Makefile.am (release): Use -f so that "make release" works
2183 when existing binaries of the same name exist.
2184
33ef69a7
BD
21852008-04-08 Brian Dessent <brian@dessent.net>
2186
2187 * res.rc (IDD_SPLASH): Update copyright years on splash page.
2188
51325df5
BD
21892008-04-08 Brian Dessent <brian@dessent.net>
2190
2191 * CHANGES: Update.
2192 * install.cc (Installer::installOne): Cope with compressed
2193 0-byte dummy packages. Fix progress bar update bug introduced
2194 in earlier refactoring.
2195
2e0aaec9
BD
21962008-04-08 Brian Dessent <brian@dessent.net>
2197
2198 * CHANGES: Update.
2199
22002008-04-08 Brian Dessent <brian@dessent.net>
2201
2202 Various warning/header cleanups necessary for clean gcc 4.3 build.
2203 * ConnectionSetting.cc: Include stdlib.h.
2204 * LogFile.cc: Ditto.
2205 * Makefile.am: Don't hardcode paths to MinGW libz and libbz2.
2206 * PickView.cc: Include limits.h.
2207 * String++.cc: Include string.h.
2208 * archive_tar.cc (archive_tar::next_file_name): Silence nested-if
2209 warning.
2210 * autoload.c: Switch back to .text section before emiting
2211 autoload_common.
2212 * choose.cc: Include stdlib.h and algorithm.
2213 * compress_gz.cc: Include memory.h and malloc.h.
2214 * filemanip.cc: Include string.h.
2215 (parse_filename): Silence nested-if warning.
2216 * nio-ftp.cc (NetIO_FTP::NetIO_FTP): Silence warning.
2217 * package_db.cc: Include algorithm.
2218 * site.cc (get_site_list): Silence warning.
2219 * win32.cc: Include memory.
2220 * csu_util/MD5Sum.cc: Include string.h.
2221
d0355815 22222008-03-02 Dave Korn <dave.korn@artimi.com>
4e6c8d9e 2223
d0355815 2224 * install.cc (Installer::installOne): Accept new HWND argument
4e6c8d9e
DK
2225 from caller and pass it to MessageBox calls so that MB_TASKMODAL
2226 can work.
2227 (check_for_old_cygwin): Likewise.
2228 (do_install_thread): Pass owner's HWND (from thread context) when
2229 calling them.
2230
84ea7bd6
DK
22312008-02-23 Dave Korn <dave.korn@artimi.com>
2232
2233 * cygpackage.cc (cygpackage::getfirstfile): Guard against trying to
2234 construct std::string from NULL returned by io_stream::gets when the
2235 stream decompressor fails on a corrupt *.lst.gz file.
2236
22ade75c
DK
22372008-02-21 Dave Korn <dave.korn@artimi.com>
2238
2239 * geturl.cc (progress): Correct SI unit notation.
2240
b612bff1
DK
22412008-02-01 Vincent Privat <vincent.privat@gmail.com>
2242
2243 * net.cc (OnInit): New StringOption (ProxyOption)
2244 This new option (-p) allows to call setup.exe with a proxy
2245 in its command-line arguments.
2246
a81fbc25
BD
22472007-07-31 Brian Dessent <brian@dessent.net>
2248
2249 * ini.cc (do_remote_ini): Fix crash due to double free of ini_file.
2250
92ef6cf8
BD
22512007-07-30 Brian Dessent <brian@dessent.net>
2252
2253 * CHANGES: Update.
2254 * configure.in (AM_INIT_AUTOMAKE): Enable more automake warnings.
2255 * Makefile.am (INCLUDES): Use AM_CPPFLAGS instead.
2256 (CLEANFILES): Add. Minor portability tweaks.
2257 * tests/Makefile.am (INCLUDES): Use AM_CPPFLAGS instead.
2258 * archive.cc (archive::extract): Try to be more compatible when
2259 opening tar files.
2260 * compress_bz.cc: Fix whitespace throughout.
2261 (compress_bz::~compress_bz): Ensure that underlying io_stream's dtor is
2262 also run.
2263 * install.cc (Installer::installOne): Refactor.
2264 * package_db.cc (ConnectedLoopFinder::doIt): Move some log spewage into
2265 setup.log.full from setup.log.
2266 (packagedb::connectedBegin): Ditto. Consolidate log output to one line.
2267
0a0203db
BD
22682007-07-02 Brian Dessent <brian@dessent.net>
2269
2270 * CHANGES: Update.
2271
475ee6a3
BD
22722007-06-26 Brian Dessent <brian@dessent.net>
2273
2274 * Makefile.am (release): Drop inconsistent use of $(EXEEXT). Leave an
2275 untouched copy of setup.exe so that later make invocations don't
2276 unnecessarily rebuild it.
2277 (snapshot): Fix typo.
2278 * install.cc (md5_one): Don't try to check packages whose
2279 pkgsource.Cached () is NULL, as with those whose download failed.
2280
12dea33a
BD
22812007-06-26 Brian Dessent <brian@dessent.net>
2282
2283 * CHANGES: Update to reflect release branch.
2284
22852007-06-26 Brian Dessent <brian@dessent.net>
812cdd92
BD
2286
2287 * CHANGES: Make current.
2288
feee2f2b
BD
22892007-05-30 Brian Dessent <brian@dessent.net>
2290
2291 * find.h (class Find): Make _start_dir non-const.
2292 * find.cc (Find::Find): Append a trailing slash to _start_dir only if
2293 it does not already contain one.
2294 (Find::accept): Use the previously stored value of _start_dir rather
2295 than unconditionally appending a slash.
2296
b941c8be
BD
22972007-05-29 Brian Dessent <brian@dessent.net>
2298
2299 * Makefile.am: No need to specify the default value of --preprocessor
2300 to windres. Rework the automatic version extraction rules so that the
2301 source tarball is generated with the proper name and directory instead
2302 of setup-0. Update snapshot rule to also upload a copy of the binary
2303 with debugging symbols still present.
2304
dacb1ebd
BD
23052007-05-29 Brian Dessent <brian@dessent.net>
2306
2307 This is a general tidying up/modernization of the build infrastructure.
2308 Renaming the lexer and parser to .ll and .yy allows using automake's
2309 builtin support for flex and bison with C++ sources, and libinilex is a
2310 slightly cleaner way of omitting -Werror.
2311
2312 * Makefile.am (AUTOMAKE_OPTIONS): Move to AM_INIT_AUTOMAKE.
2313 (AM_YFLAGS): Define.
2314 (AM_LFLAGS): Define.
2315 (INCLUDES): Remove redundant mingw directory.
2316 (EXTRA_DIST): Adjust for newly named lexer/parser.
2317 (BUILT_SOURCES): Ditto.
2318 (inilint_LDADD): Ditto.
2319 (inilint_SOURCES): Ditto.
2320 (setup_LDADD): Ditto.
2321 (setup_SOURCES): Ditto.
2322 (iniparse.cc): Remove custom rules.
2323 (inilex.cc): Ditto.
2324 * configure.in: Update quoting and use modern form of AC_INIT and
2325 AM_INIT_AUTOMAKE.
2326 * inilex.l: Rename from this ...
2327 * inilex.ll: ... to this.
2328 * iniparse.y: Rename from this ...
2329 * iniparse.yy: ... to this.
2330
eb20d728
BD
23312007-05-29 Brian Dessent <brian@dessent.net>
2332
2333 * IniParseFindVisitor.cc (IniParseFindVisitor::IniParseFindVisitor):
2334 Remove error_buf and error_count initializers.
2335 (IniParseFindVisitor::visitFile): Store filename in current_ini_name.
2336 Use yyerror_count and yyerror_messages in place of removed error_count
2337 and error_buf members.
2338 * IniParseFindVisitor.h (class IniParseFindVisitor): Remove error_buf
2339 and error_count members.
2340 * ini.cc: Include io_stream_memory.h. Remove file static variables
2341 error_buf, error_count, and ini_filename.
2342 (GuiParseFeedback::progress): Remove some verbose log spam.
2343 (do_remote_ini): Recode .ini-fetching logic to properly display parse
2344 errors, and to account for corrupt bzip2 files.
2345 (yyerror): Moved elsewhere.
2346 (fprintf): Delete unused function.
2347 * ini.h: Remove useless __cplusplus guard. Declare extern variables
2348 current_ini_name, yyerror_messages, and yyerror_count.
2349 * inilex.l: Add current_ini_name, yyerror_messages, and
2350 yyerror_count.
2351 (ini_init): Initialize new variables.
2352 (yybol): Delete.
2353 (yyerror): Reimplement using std::string and relocate from ini.cc.
2354 * io_stream.cc (io_stream::copy): Add clarifying comment.
2355
6c8daadf
IP
23562007-05-04 Igor Peshansky <pechtcha@cs.nyu.edu>
2357
2358 * resource.h (IDC_STATIC_HEADER): New control id.
2359 * res.rc (IDD_SPLASH): Adjust the copyright.
2360 (IDD_DESKTOP): Make header text accessible as a separate control.
2361 * desktop.cc (set_status): Use eset() instead of SetWindowText().
2362 (load_dialog): Disable checkboxes and change dialog text in
2363 download-only mode.
2364 (DesktopSetupPage::OnInit): Disable checkboxes in download-only
2365 mode.
2366 * threebar.cc (ThreeBarProgressPage::OnMessageApp): Deprecate the
2367 default fallthrough.
2368 * download.cc (do_download_thread): Explicitly return the next
2369 dialog.
2370
f8dcce01
MB
23712007-04-19 Max Bowsher <maxb1@ukf.net>
2372
2373 * configure.in: Turn inilint default build off again, since I cannot
2374 get it to work.
2375
6b457e67
MB
23762007-04-19 Max Bowsher <maxb1@ukf.net>
2377
54ac354e
MB
2378 * configure.in: Make inilint built by default.
2379
23802007-04-19 Max Bowsher <maxb1@ukf.net>
2381
2382 * inilintmain.cc: Fix multiple compile errors.
6b457e67 2383
86e53214
MB
23842007-04-19 Max Bowsher <maxb1@ukf.net>
2385
2386 * Makefile.am: Make inilint use same warnonly-inilex workaround that
2387 setup already does.
2388
7b21a88e
IP
23892007-03-29 Igor Peshansky <pechtcha@cs.nyu.edu>
2390
2391 * LogFile.cc (LogFile::exit): Write exit_msg directly to log, without
2392 the message box.
2393 * resource.h (IDC_DESKTOP_SEPARATOR,IDC_STATUS_HEADER,IDC_STATUS): New
2394 control ids.
2395 * res.rc (IDD_DESKTOP): Change the caption. Add status information.
2396 * desktop.h (DesktopSetupPage::DesktopSetupPage): Define constructor
2397 in the implementation.
2398 * desktop.cc (DesktopControlsInfo): Position specifiers for status
2399 information items.
2400 (DesktopSetupPage::DesktopSetupPage): Register position specifiers.
2401 (set_status): New static method.
2402 (load_dialog): Set status information, if available.
2403 (DesktopSetupPage::OnInit): Set status header font.
2404
909f5cf9
BD
24052007-03-01 Brian Dessent <brian@dessent.net>
2406
2407 * ini.h (SETUP_INI_FILENAME): Rename setup_9x.ini to setup_legacy.ini.
2408 (SETUP_BZ2_FILENAME): Likewise.
2409
5072c0bb
BD
24102007-02-27 Brian Dessent <brian@dessent.net>
2411
2412 * ini.h (SETUP_INI_FILENAME): Add define.
2413 (SETUP_BZ2_FILENAME): Add define.
2414 * IniParseFindVisitor.cc (IniParseFindVisitor::visitFile): Use
2415 above macros to parameterize setup.ini filename.
2416 * fromcwd.cc (SetupFindVisitor::visitFile): Ditto.
2417 * ini.cc (do_remote_ini): Ditto.
2418 * Makefile.am (setup_SOURCES): Add win32.cc.
2419 * autoload.c: Include windows.h directly instead of win32.h so that
2420 win32.h can contain C++.
2421 * desktop.cc (verinfo): Delete.
2422 (make_link): Use IsWindowsNT to check for NT instead of verinfo.
2423 (DesktopSetupPage::OnInit): Likewise.
2424 * mount.cc (is_admin): Likewise.
2425 * script.cc (init_run_script): Likewise.
2426 * main.cc (class SIDWrapper, SIDWrapper::SIDWrapper,
2427 SIDWrapper::~SIDWrapper, SIDWrapper::theSID, class HANDLEWrapper,
2428 HANDLEWrapper::HANDLEWrapper, HANDLEWrapper::~HANDLEWrapper,
2429 HANDLEWrapper::theHANDLE, class TokenGroupCollection,
2430 TokenGroupCollection::TokenGroupCollection,
2431 TokenGroupCollection::~TokenGroupCollection,
2432 TokenGroupCollection::populate, TokenGroupCollection::find,
2433 class NTSecurity, set_default_sec, NTSecurity::NoteFailedAPI,
2434 NTSecurity::NTSecurity, NTSecurity::failed,
2435 NTSecurity::initialiseEveryOneSID, NTSecurity::setDefaultDACL,
2436 NTSecurity::setDefaultSecurity): Remove implementation of these
2437 classes from this file and into new file win32.cc and existing win32.h.
2438 (main): Fix whitespace and formatting per GNU coding standards.
2439 * res.rc (IDS_SETUPINI_MISSING): Parameterize filename with %s.
2440 * win32.cc: New file containing methods removed from main.cc as well
2441 as new class VersionInfo methods.
2442 * win32.h: Include <string> for std::string.
2443 (class SIDWrapper, class HANDLEWrapper, class TokenGroupCollection,
2444 class NTSecurity): Add classes removed from main.cc.
2445 (class VersionInfo): Add new class.
2446 (GetVer): Declare.
2447 (IsWindowsNT): Define.
2448
5cc32375
BD
24492007-02-20 Brian Dessent <brian@dessent.net>
2450
2451 * README: Modernize list of required packages, and mention doconfigure.
2452
5ef77c46
BD
24532007-02-17 Cesar Strauss <cstrauss@cea.inpe.br>
2454
3c1254b9
MB
2455 * IniDBBuilderPackage.cc (IniDBBuilderPackage::buildPackageSource):
2456 Initialize the version and operator fields of the newly created
2457 PackageSpecification object, so setup can pick the correct source
2458 version later on.
5ef77c46 2459
a875b471
BD
24602007-02-17 Brian Dessent <brian@dessent.net>
2461
2462 * script.cc (Script::run): Check for existance of script file and
2463 return without doing anything if it does not exist.
2464
3a694862
MB
24652006-12-26 Max Bowsher <maxb1@ukf.net>
2466
2467 * IniDBBuilder.h (IniDBBuilder): Make this class abstract.
2468 * IniDBBuilder.cc: Delete file.
2469 * Makefile.am (inilint_SOURCES, setup_SOURCES): Remove IniDBBuilder.cc.
2470
be8736e4
MB
24712006-12-26 Max Bowsher <maxb1@ukf.net>
2472
2473 Add a shell script that documents/centralizes the standard configure
2474 command line.
2475
2476 * doconfigure: New file.
2477 * Makefile.am (EXTRA_DIST): Add doconfigure.
2478
cafda414
IP
24792006-11-28 Igor Peshansky <pechtcha@cs.nyu.edu>
2480
2481 * install.cc (Installer::installOne): If file is in use, ask the user
2482 to stop processes and retry.
2483 (MB_RETRYCONTINUE, IDCONTINUE): New macros.
2484 (hMsgBoxHook): New static field.
2485 (CBTProc): New window hook function.
2486 (_custom_MessageBox): New function.
2487 * CHANGES: Update with the above.
2488
effce34d
IP
24892006-10-12 Igor Peshansky <pechtcha@cs.nyu.edu>
2490
2491 * desktop.cc (make_cygwin_bat,save_icon): Capitalize filename.
2492
7dc7a0a4
BD
24932006-08-06 Igor Peshansky <pechtcha@cs.nyu.edu>
2494
2495 * package_version.cc (packageversion::scan): Catch and handle
2496 validation exception.
2497
0ec7cbc9
BD
24982006-08-06 Igor Peshansky <pechtcha@cs.nyu.edu>
2499
2500 * cygpackage.h (filesize): Remove unused field.
2501 (cygpackage::createInstance): Ditto.
2502 * cygpackage.cc (cygpackage::createInstance): Ditto.
2503 * package_db.cc (packagedb::packagedb): Remove unused variables.
2504 Simplify parsing of installed.db.
2505
c861f482
BD
25062006-08-06 Igor Peshansky <pechtcha@cs.nyu.edu>
2507
2508 * desktop.cc (DesktopSetupPage::OnInit): Remove stray MessageBox.
2509
3d4c5ebb
IP
25102006-05-24 Igor Peshansky <pechtcha@cs.nyu.edu>
2511
2512 * PickPackageLine.h (PickPackageLine::DrawIcon): Move to PickView.
2513 * PickView.h (PickView::DrawIcon): Move from PickPackageLine.
2514 (PickView::icon_dc,PickView::bm_icon): New instance field.
2515 (PickView::rect_icon,PickView::bg_fg_brush): Ditto.
2516 * PickCategoryLine.cc (PickCategoryLine::paint): Use
2517 PickView::DrawIcon() instead of BitBlt().
2518 * PickPackageLine.cc (PickPackageLine::DrawIcon): Move to PickView.
2519 (PickPackageLine::paint): Use PickView::DrawIcon().
2520 * PickView.cc (PickView::~PickView): Delete GDI objects.
2521 (PickView::init): Create icon drawing context.
2522 (PickView::DrawIcon): New function. Use system default colors to
2523 draw bitmaps.
2524 (PickView::paint): Set background color instead of using transparent
2525 mode. Create system-colored brush.
2526
ba2559db
BD
25272006-04-25 Brian Dessent <brian@dessent.net>
2528
2529 * COPYING: New file (GPL).
2530 * Makfile.am (EXTRA_DIST): Add COPYING.
2531
5f9ac473
MB
25322006-04-17 Max Bowsher <maxb1@ukf.net>
2533
2534 * String++.cc, String++.h: Finally, it's time for the long-awaited
2535 departure of 'class String' from this world. setup.exe can now
2536 happily claim to follow the sane path of using just one general
2537 purpose string class throughout :-)
2538
02d06553
MB
25392006-04-17 Max Bowsher <maxb1@ukf.net>
2540
2541 * cygpackage.cc, cygpackage.h, package_version.cc, package_version.h:
2542 Do some String to std::string migration.
2543
1eb2461a
MB
25442006-04-17 Max Bowsher <maxb1@ukf.net>
2545
2546 * package_meta.cc, package_meta.h, package_source.cc,
2547 package_source.h: Do some String to std::string migration.
2548 * package_db.cc: Small tweak to assist with the above.
2549
d19f12fd
MB
25502006-04-17 Max Bowsher <maxb1@ukf.net>
2551
2552 * PickView.cc, PickView.h, package_db.cc, package_db.h:
2553 Do some String to std::string migration.
2554 * package_meta.h: Change a couple of types to assist with the above.
2555
9b0876b3
MB
25562006-04-17 Max Bowsher <maxb1@ukf.net>
2557
2558 * IniDBBuilder.cc, IniDBBuilder.h, IniDBBuilderPackage.cc,
2559 IniDBBuilderPackage.h, PickLine.h, PickPackageLine.cc:
2560 Do some String to std::string migration.
2561
fd93eff9
MB
25622006-04-16 Max Bowsher <maxb1@ukf.net>
2563
2564 * FindVisitor.cc, FindVisitor.h, IniParseFindVisitor.cc,
2565 IniParseFindVisitor.h, ScanFindVisitor.cc, ScanFindVisitor.h, find.cc,
2566 find.h, fromcwd.cc, ini.cc, ini.h, iniparse.y, postinstall.cc:
2567 Do some String to std::string migration.
2568
a3a02820
MB
25692006-04-16 Max Bowsher <maxb1@ukf.net>
2570
2571 * IOStreamProvider.h, archive.cc, archive.h, archive_tar.cc,
2572 archive_tar.h, io_stream.cc, io_stream.h, io_stream_cygfile.cc,
2573 io_stream_cygfile.h, io_stream_file.cc, io_stream_file.h:
2574 Do some String to std::string migration.
2575
2bba98e8
MB
25762006-04-16 Max Bowsher <maxb1@ukf.net>
2577
2578 * desktop.cc, download.cc, install.cc, mount.cc, mount.h, script.cc,
2579 script.h: Do some String to std::string migration.
2580
ee4ad3a7
MB
25812006-04-16 Max Bowsher <maxb1@ukf.net>
2582
2583 * category.cc: Remove source file that contained no code!
2584 * category.h: Delete, moving the single useful line to...
2585 * package_meta.h: ...here. Remove category.h include.
2586 * choose.cc, package_db.h, package_meta.cc: Remove category.h include.
2587 * Makefile.am: Remove references to removed files.
2588
08678720
MB
25892006-04-15 Max Bowsher <maxb1@ukf.net>
2590
2591 * ConnectionSetting.cc, ConnectionSetting.h, Exception.cc,
2592 Exception.h, IniParseFeedback.cc, IniParseFeedback.h, LogFile.cc,
2593 LogFile.h, LogSingleton.h, PackageSpecification.cc,
2594 PackageSpecification.h, SourceSetting.cc, SourceSetting.h,
2595 UserSettings.cc, UserSettings.h, dialog.cc, dialog.h, diskfull.cc,
2596 diskfull.h, filemanip.cc, filemanip.h, inilintmain.cc, localdir.cc,
2597 main.cc, nio-file.cc, nio-http.cc, prereq.cc, prereq.h, proppage.cc,
2598 proppage.h, site.cc, site.h, splash.cc, state.cc, state.h, window.cc,
2599 window.h: Do some String to std::string migration.
2600
cb026227
MB
26012006-04-15 Max Bowsher <maxb1@ukf.net>
2602
2603 * String++.cc, String++.h
2604 (new_cstr_char_array, format_1000s): Migrate String to std::string.
ca2b7505 2605 (casecompare_lt_op, std::string operator+): New.
cb026227 2606
470f4928
MB
26072006-04-06 Max Bowsher <maxb1@ukf.net>
2608
2609 * String++.h, String++.cc
2610 (String::replace): Remove - usused.
2611 (String::find): Remove - semantics do not match std::string.
2612
2613 * root.cc (directory_is_rootdir): Switch to std::string.find().
2614 * script.cc (Script::baseName): Rewrite use of String.find().
2615
2b791966
MB
26162006-03-30 Max Bowsher <maxb1@ukf.net>
2617
2618 * String++.cc (replace): New function to take the place of one form
2619 of String::replace method.
2620 * String++.h (replace): Declare.
2621 (String::replace): Make private.
2622
2623 * desktop.cc (make_cygwin_bat): Use new function.
2624 * filemanip.cc (backslash): Use simple loop in place of
2625 String::replace.
2626 * filemanip.h (backslash): Change signature to use std::string in
2627 place of String.
2628
afa76033
MB
26292006-03-30 Max Bowsher <maxb1@ukf.net>
2630
2631 * String++.cc, String++.h (casecompare): New function replacing
2632 String.casecompare to increase parity with std::string.
2633 (String::casecompare): Make private.
2634
2635 * ConnectionSetting.cc, IniDBBuilderPackage.cc,
2636 IniParseFindVisitor.cc, LogFile.cc, PackageSpecification.cc,
2637 PickView.cc, SourceSetting.cc, String++.cc, String++.h, fromcwd.cc,
2638 io_stream.cc, mount.cc, package_db.cc, package_source.h,
2639 package_version.cc, prereq.h, script.cc:
2640 Use casecompare in place of String::casecompare.
2641
8300be9c
MB
26422006-03-30 Max Bowsher <maxb1@ukf.net>
2643
2644 * String++.cc, String++.h: Remove String(int) constructor, which
2645 was causing dangerously bizarre implicit conversions, and was a point
2646 of disparity between String and std::string.
2647 (stringify): New function to replace functionality removed above.
2648
2649 * PickView.cc (PickView::init_headers),
2650 archive_tar.cc (archive_tar::next_file_name),
2651 cygpackage.cc (cygpackage::setCanonicalVersion):
2652 Make explicit and call out with a FIXME some bizarre behaviour.
2653
2654 * ScanFindVisitor.cc (ScanFindVisitor::visitFile),
2655 filemanip.cc (base), iniparse.y,
2656 threebar.cc (ThreeBarProgressPage::SetBar2):
2657 Make simple adaptations to the changed API.
2658
7c593196
IP
26592006-03-14 Igor Peshansky <pechtcha@cs.nyu.edu>
2660
2661 * PickView.cc (PickView::setViewMode): Auto-expand category if
2662 its name starts with a dot.
2663
3dbb54fc
DK
26642006-03-14 Dave Korn <dave.korn@artimi.com>
2665
2666 * String++.cc (new_cstr_char_array): Handle null input correctly.
2667
e5e2eba8
CF
26682006-03-10 Christopher Faylor <cgf@timesys.com>
2669
2670 * res.rc: Update copyright.
2671 (IDS_MIRROR_LST): Use cygwin.com for mirror list, not
2672 sources.redhat.com.
e5e2eba8 2673 * site.cc (NOSAVE1): Use preferred name of sourceware site.
4f41c01c 2674 (NOSAVE2): sourceware.cygnus.com -> sources.redhat.com.
e5e2eba8
CF
2675 (NOSAVE1_LEN): Use just-defined name to determine length.
2676 (NOSAVE2_LEN): Ditto.
2677 (NOSAVE3_LEN): Ditto.
2678
26792006-03-10 Bas van Gompel <patch-cygsup.buzz@bavag.tmfweb.nl>
2680
2681 * res.rc (IDD_DROPPED): New dialog.
2682 * resource.h (IDD_DROPPED): New dialog-id.
2683 (IDC_DROP_MIRRORS, IDC_DROP_NOWARN): New control-ids.
2684 * site.cc: Add enum for response on dropped mirrors.
2685 (cache_is_usable, cache_needs_writing): New bools.
2686 (cache_warn_urls): New string.
2687 (cached_site-list, dropped_site_list): New SiteLists.
2688 (site_list_type::init, site_list_type::site_list_type): Change to four
2689 parameter form.
2690 (site_list_type::site_list_type, site_list_type::operator=) Copy
2691 servername, area and location.
2692 (load_site_list): New function, broken out of get_site_list. Support
2693 four-parameter site_list_type.
2694 (get_site_list): Break out load_site_list. Move reading cache earlier.
2695 Don't write new cache. Set flags to record cache state. Load both
2696 all_site_list and cached_site_list.
2697 (SiteSetting::registerSavedSite): Use four-parameter site_list_type.
2698 (drop_proc, check_dropped_mirrors, write_cache_list, save_cache_file):
2699 New functions.
2700 (SitePage::OnNext): Check for dropped mirrors and save cache as
2701 appropriate.
2702 (SitePage::OnMessageCmd): Use four-parameter site_list_type.
2703 * site.h
2704 (site_list_type::init, site_list_type::site_list_type): Change to four
2705 parameter form.
2706 (site_list_type): Add servername, area and location members.
2707
b2b35a6e
IP
27082006-03-09 Igor Peshansky <pechtcha@cs.nyu.edu>
2709
2710 * script.cc (Script::run): Fix inverted test for abnormal exit.
2711
966a9815
MB
27122006-03-09 Bas van Gompel <patch-cygsup.buzz@bavag.tmfweb.nl>
2713 Max Bowsher <maxb1@ukf.net>
2714
2715 Provide indication of site that a file is being downloaded from.
2716
2717 * geturl.cc: Use std::string instead of String throughout.
2718 (init_dialog): Put more information into GUI.
2719 Remove unused 'owner' parameter and change all callers.
2720 (progress): Remove spurious \n characters from GUI.
2721 * geturl.h: Use std::string instead of String throughout.
2722 * res.rc (IDD_INSTATUS): Use SS_ENDELLIPSIS.
2723
8e91c2fb
MB
27242006-03-09 Max Bowsher <maxb1@ukf.net>
2725
2726 * Makefile.am (EXTRA_DIST): Add tree-minus.bmp and tree-plus.bmp.
2727
bb810dd8
DK
27282006-01-20 Bryan Thrall <bryan.thrall@flightsafety.com>
2729
2730 * source.cc (SourcePage::OnActivate): Command line takes precedence
2731 over last user selection.
2732
253585ba
MB
27332005-11-30 Max Bowsher <maxb1@ukf.net>
2734
2735 * res.rc (IDD_ROOT, IDD_LOCAL_DIR): Rearrange some controls a little,
2736 in response to suggestion from Carl Karsten.
2737
d60832c6
MB
27382005-11-30 Max Bowsher <maxb1@ukf.net>
2739
2740 * site.h, site.cc: Use std::string in preference to String.
2741 (site_list_type::init): Convert some painful raw C string work to
2742 STL std::string work. Stop totally ignoring the result of this
2743 calculation, implementing the (somewhat weird) sort order for sites
2744 that was apparently indented for ages.
2745
3d3c6047
IP
27462005-10-14 Igor Pechtchanski <pechtcha@cs.nyu.edu>
2747
2748 * io_stream.cc (url_scheme_not_registered): New macro.
2749 (io_stream::open): Better log message on error.
2750 (io_stream::mkpath_p,io_stream::remove,io_stream::mklink): Ditto.
2751 (io_stream::move,io_stream::exists): Ditto.
2752
b059e20b
IP
27532005-10-13 Igor Pechtchanski <pechtcha@cs.nyu.edu>
2754
2755 * site.cc (get_site_list): Default to empty mirror list if
2756 server unavailable and none cached, to allow using preferred
2757 mirrors anyway.
2758
82573872
IP
27592005-09-29 Igor Pechtchanski <pechtcha@cs.nyu.edu>
2760
2761 * package_db.cc (packagedb::packagedb): Remember missing package
2762 database file.
2763
9237e1bb
IP
27642005-09-29 Igor Pechtchanski <pechtcha@cs.nyu.edu>
2765
2766 * site.cc (get_site_list): Store mirror list locally.
2767 Use local copy if unable to download.
2768
a8be3f13
IP
27692005-09-27 Igor Pechtchanski <pechtcha@cs.nyu.edu>
2770
2771 * io_stream_cygfile.cc (io_stream_cygfile::io_stream_cygfile):
2772 Better log message on error.
2773
2a8125be
IP
27742005-09-27 Igor Pechtchanski <pechtcha@cs.nyu.edu>
2775
bd3a38c7 2776 * script.cc (Script::isAScript): Fix string comparison.
2a8125be 2777
01b9378a
IP
27782005-09-27 Igor Pechtchanski <pechtcha@cs.nyu.edu>
2779
2780 * nio-ftp.cc (NetIO_FTP::NetIO_FTP): Reconnect on FTP timeout.
2781
65ce9baf
BD
27822005-09-11 Masayuki FUJII <boochang@m4.kcn.ne.jp>
2783
2784 * package_meta.cc (packagemeta::ScanDownloadedFiles): Don't use an
2785 invalid iterator. Fix whitespace.
2786
3f6926b1
BD
27872005-09-09 Brian Dessent <brian@dessent.net>
2788
2789 * CHANGES: Document recent updates.
2790 * choose.cc (ChooserPage::OnInit): Add new tooltip.
2791 * res.rc (IDD_CHOOSE): Remove 'administrative' from description.
2792 (IDS_HIDEOBS_TOOLTIP): Add new string for tooltip.
2793 * resource.h (IDS_HIDEOBS_TOOLTIP): Define.
2794 * window.cc (Window::ActivateTooltips): Fix whitespace. Set tooltip
2795 delay to 30 seconds.
2796
9dda7744
BD
27972005-09-09 Igor Pechtchanski <pechtcha@cs.nyu.edu>
2798
2799 * PickView.cc (PickView::paint): Set background mode to transparent.
2800 * PickCategoryLine.cc (PickCategoryLine::paint): Use bitwise AND to
2801 blit bitmaps.
2802 * PickPackageLine.cc (PickPackageLine::paint): Ditto.
2803
534c25cc
BD
28042005-09-01 Brian Dessent <brian@dessent.net>
2805
2806 * package_meta.cc (packagemeta::uninstall): Remove support for
2807 undocumented and dangerous postremove script.
2808
28092005-09-01 Igor Pechtchanski <pechtcha@cs.nyu.edu>
2810
2811 * script.cc (run): Change to return the exit code or negative error.
2812 (Script::run): Ditto.
2813 (try_run_script): Receive both filename and extension and run only
2814 one script. Also return the exit code.
2815 * script.h (try_run_script): Change signature.
2816 (Script::run): Ditto.
2817 * postinstall.cc (RunScript::operator()): Change to return the exit
2818 code or negative error.
2819 * install.cc (Installer::preremoveOne): Pass extension to
2820 try_run_script().
2821
28222005-09-01 Eric Blake <ebb9@byu.net>
2823
2824 * script.cc (shells): Use /bin/bash, not sh, to allow upgrades to
2825 /bin/sh.
2826
0ac305ec
BD
28272005-09-01 Igor Pechtchanski <pechtcha@cs.nyu.edu>
2828
2829 * PickView.h (PickView::size_col): New instance variable.
2830 * PickView.cc (pkg_headers, cat_headers): Add size column.
2831 (PickView::set_headers): Initialize size_col.
2832 (PickView::init_headers): Include width of size column.
2833 * PickPackageLine.cc (PickPackageLine::paint): Handle size_col.
2834 * String++.cc (format_1000s): New function.
2835 * String++.h (format_1000s): Declare new function.
2836
aa62e0f3
BD
28372005-09-01 Brian Dessent <brian@dessent.net>
2838
2839 * Makefile.am (BASECXXFLAGS): Add -Wno-uninitialized to work around
2840 spurious warnings with gcc 3.4.4.
2841
687dd890
BD
28422005-05-22 Brian Dessent <brian@dessent.net>
2843
2844 * res.rc (IDD_CHOOSE): Change description to include administrative
2845 packages in addition to obsolete.
2846
82306ac2
BD
28472005-05-21 Brian Dessent <brian@dessent.net>
2848
2849 * prereq.cc: New file.
2850 * prereq.h: Ditto.
2851 * tree-minus.bmp: Ditto.
2852 * tree-plus.bmp: Ditto.
2853 * Makefile.am: Add prereq.cc and prereq.h to build.
2854 * PickCategoryLine.cc (PickCategoryLine::paint): Add new parameter and
2855 refactor. Use bitmap for '+' and '-' indicators. Draw package lines
2856 column-wise for better drawing efficiency.
2857 (PickCategoryLine::click): Use previously calculated x value.
2858 * PickCategoryLine.h (PickCategoryLine::paint): Update prototype. Add
2859 'spin_x' member.
2860 * PickLine.h (PickLine:paint): Update prototype.
2861 * PickPackageLine.cc (PickPackageLine::DrawCheck): Remove.
2862 (PickPackageLine::DrawIcon): New function.
2863 (PickPackageLine::paint): Add parameter. Refactor completely for more
2864 efficient painting.
2865 * PickPackageLine.h (PickPackageLine::DrawIcon): Add prototype.
2866 (PickPackageLine::paint): Update prototype.
2867 (PickPackageLine::DrawCheck): Remove.
ca2b7505 2868 * PickView.cc (pkg_headers): Remove unused 'slen' field, add new
82306ac2 2869 'needs_clip' field to signify if clipping is necessary for this column.
ca2b7505 2870 (PickView::note_width): Fold long line. Refactor slightly for
82306ac2
BD
2871 simplicity.
2872 (PickView::set_view_mode): Remove.
2873 (PickView::cycleViewMode): New function.
2874 (PickView::setViewMode): Refactor completely. Incorporate functionality
2875 of clear_view() here instead. Simplify package selection into a single
2876 'for' loop rather than repeating code for each type.
2877 (isObsolete): New function, with second overloaded version.
2878 (PickView::setObsolete): New function.
2879 (PickView::insert_pkg): Do not show obsolete packages. Move
2880 declaration of 'db' lower. Fix whitespace.
2881 (PickView::insert_category): Do not show obsolete packages.
ca2b7505 2882 (PickView::clear_view): Remove. Moved logic into 'setViewMode'.
82306ac2
BD
2883 (PickView::scroll): Add additional parameter 'howmany' with default
2884 value of 1. Scroll by 'howmany' lines for SB_LINEDOWN and SB_LINEUP.
2885 (NUM_CATEGORY_COL_WIDTH): Define.
2886 (PickView::init_headers): Fix whitespace. Add comments. Ignore
2887 obsolete packages in width calculations. Add functionality to size
2888 'Category' column so that at least NUM_CATEGORY_COL_WIDTH categories
2889 are displayed for every package. Ensure that 'new_col' takes into
2890 account all possible labels.
2891 (PickView::PickView): Initialize showObsolete to false.
2892 (PickView::init): Remove unused bitmap bm_rtarrow. Add new bitmaps
2893 bm_treeplus and bm_treeminus. Use a macro for better readability.
2894 Fix whitespace formatting. Remove header computation from here, call
2895 refresh() instead.
2896 (PickView::registerWindowClass): Remove unnecessary background brush.
2897 (PickView::WindowProc): Add support for WM_MOUSEWHEEL message
2898 processing. Fix indentation. Reformat for readability.
2899 (PickView::paint): Get the update region before calling BeginPaint.
2900 Fill the update region with the default colors. Do not do clipping
2901 here. Pass update region to the PickLine paint function instead.
2902 Free the update region when finished.
2903 (PickView::Create): Fix indentation.
2904 (PickView::defaultTrust): Ditto.
2905 (PickView::refresh): Add column recalculation logic here.
2906 * PickView.h: Fix indentation.
2907 (RTARROW_WIDTH): Remove unused define.
2908 (NEW_COL_SIZE_SLOP): Ditto.
2909 (TREE_INDENT): Define.
2910 (PickView::get_view_mode): Remove.
2911 (PickView::set_view_mode): Rename to setViewMode for consistency.
2912 (PickView::cycleViewMode): Add new function.
2913 (PickView::setObsolete): Ditto.
2914 (PickView::clear_view): Remove.
2915 (PickView::bm_treeplus): Define new member.
2916 (PickView::bm_treeminus): Ditto.
2917 (PickView::scroll): Add parameter.
2918 (PickView::Header::slen): Remove unused member.
2919 (PickView::Header::needs_clip): Define new member.
2920 (PickView::showObsolete): Ditto.
2921 (isObsolete): Add prototype, and for overloaded version as well.
2922 * choose.cc: Add include.
2923 (ChooserControlsInfo): Allow new checkbox to be resized.
2924 (ChooserPage::OnInit): Start dialog with 'Hide obsolete' checked.
2925 (ChooserPage::OnNext): Call the dependency checker, act accordingly.
2926 (ChooserPage::changeTrust): Notify dependency checker of current trust
2927 level when it changes.
2928 (ChooserPage::OnMessageCmd): Just call cycleViewMode instead when
2929 changing the view. Update the chooser when the user toggles the
2930 'hide obsolete' checkbox.
2931 (ChooserPage::OnMouseWheel): New function. Pass mouse wheel message
2932 on to chooser.
2933 * choose.h (OnMouseWheel): Add prototype.
2934 * main.cc: Add include.
2935 (main): Define and initialize the PrereqPage object. Add it into
2936 the property sheet list.
2937 * PropPage.cc (PropertyPage::DialogProc): Add support for WM_MOUSEWHEEL
2938 message processing in derived classes.
2939 (PropertyPage::OnMouseWheel): New function.
2940 * PropPage.h (PropertyPage::OnMouseWheel): Add prototype.
2941 * res.rc (IDD_LOCAL_DIR): Shorten edit box so that pushbutton is not
2942 crowded.
2943 (IDD_SITE): Provide static text with an ID so that it can be resized
2944 properly. Move pushbutton slightly to right so that it doesn't crowd
2945 edit box.
2946 (IDD_SPLASH): Change copyright displayed on spash screen to be generic
2947 since the actual list of contributors is long.
2948 (IDD_CHOOSE): Add checkbox. Resize other controls to accomodate.
2949 (IDD_PREREQ): New dialog.
2950 (SPIN): Delete duplicated bitmap resource.
2951 (IDB_RTARROW): Remove unused bitmap resource.
2952 (IDB_TREE_PLUS): Add.
2953 (IDB_TREE_MINUS): Ditto.
2954 (IDS_TRUSTPREV_TOOLTIP): Revise wording to be more concise.
2955 (IDS_TRUSTCURR_TOOLTIP): Ditto.
2956 (IDS_TRUSTEXP_TOOLTIP): Ditto.
2957 (IDS_VIEWBUTTON_TOOLTIP): Ditto.
2958 * resource.h (IDD_PREREQ): Define.
2959 (IDB_RTARROW): Remove.
2960 (IDB_TREE_PLUS): Add, and renumber.
2961 (IDB_TREE_MINUS): Ditto.
2962 (IDC_SITE_USERURL): Define.
2963 (IDC_CHOOSE_HIDE): Ditto.
2964 (IDC_PREREQ_TEXT): Ditto.
2965 (IDC_PREREQ_EDIT): Ditto.
2966 (IDC_PREREQ_CHECK): Ditto.
2967 * site.cc (SiteControlsInfo): Ensure that 'User URL' static text is
2968 properly resized.
2969
846e099d
MB
29702005-05-14 Max Bowsher <maxb@ukf.net>
2971
2972 "Type" field of packageversions was not even being filled in. Fix.
2973
2974 * cygpackage.h, cygpackage.cc (cygpackage::createInstance):
2975 Make "type" a mandatory parameter of the constructor.
2976 * IniDBBuilderPackage.cc: Adjust callers.
2977
c1352375
MB
29782005-05-14 Bas van Gompel <patch-cygsup.buzz@bavag.tmfweb.nl>
2979
2980 Fix behaviour of hardlinks in source packages.
2981
2982 * archive.cc (archive::extract_file):
2983 Use prefixPath for link target on hardlinks.
2984
403f1027
MB
29852005-05-14 Max Bowsher <maxb@ukf.net>
2986
2987 Hopefully, solve the "preremove DLL dependency" bug, by running all
2988 preremove scripts before actually removing any files.
2989
ca2b7505 2990 * install.cc
403f1027
MB
2991 (Installer::preremoveOne): New method. Run preremove scripts here.
2992 (Installer::replaceOne): Remove method.
2993 (num_replacements): Remove variable.
2994 (do_install_thread): Significantly rewrite.
2995 * package_meta.cc (packagemeta::uninstall):
2996 Do not run preremove script here.
2997
f916c374
MB
29982005-05-14 Max Bowsher <maxb@ukf.net>
2999
3000 * download.cc (do_download_thread):
3001 Do not use packageversion::changeRequested().
3002 * package_version.cc (packageversion::Type):
3003 Implement declared but previously unimplemented method.
3004 (packageversion::changeRequested, _packageversion::changeRequested):
3005 Remove.
3006 * package_version.h
3007 (packageversion::changeRequested, _packageversion::changeRequested):
3008 Remove.
3009 * install.cc (Installer::replaceOne): Simplify, return void, not int.
3010 (installOneSource): Rename to...
403f1027 3011 (installOne): ...this. Change arguments and return type. Refactor.
f916c374
MB
3012 (install_one): Remove.
3013 (do_install_thread): Tidying up.
3014
655310ed
MB
30152005-05-07 Max Bowsher <maxb@ukf.net>
3016
3017 * download.cc (validateCachedPackage): Remove all MD5 checking code.
3018 It is not acceptable to check MD5 sums as part of simply answering
3019 whether a package exists in the local cache or not. It is too slow.
3020 MD5 sums always have been - and will continue to be - checked at
3021 install time.
3022 (NoMD5Option): Remove this option, as the code it controls has been
3023 removed.
3024
61a9e487
MB
30252005-05-07 Max Bowsher <maxb@ukf.net>
3026
3027 * install.cc (md5_one): Make the MD5 checking done at install time
3028 display a progess GUI, as the MD5 checking done at other times does.
3029
4c90a532
MB
30302005-05-07 Max Bowsher <maxb@ukf.net>
3031
3032 * resource.h, res.rc: Followup to recent de-MSVC-ification of
3033 resource.h, by removing a lot from res.rc, and the last few bits
3034 from resource.h.
3035
9a8a04fc
BD
30362005-05-05 Brian Dessent <brian@dessent.net>
3037
37f49caf
BD
3038 * choose.cc (ChooserPage::OnInit): Initialize tooltips for this
3039 dialog.
3040
3041 * proppage.h (PropertyPage::makeClickable): Update prototype to
3042 reflect same argument name as function.
3043
3044 * proppage.cc (PropertyPage::DialogProc): Remove redundant 'break'
ca2b7505 3045 statements that follow 'return's. Add missing braces to case
37f49caf
BD
3046 statements. Call handler for TTN_GETDISPINFO.
3047
3048 * res.rc (IDS_TRUSTKEEP_TOOLTIP): Add new STRINGTABLE entry for
3049 tooltip text.
3050 (IDS_TRUSTPREV_TOOLTIP): Ditto.
ca2b7505 3051 (IDS_TRUSTCURR_TOOLTIP): Ditto.
37f49caf
BD
3052 (IDS_TRUSTEXP_TOOLTIP): Ditto.
3053 (IDS_TRUSTPREV_TOOLTIP): Ditto.
3054 (IDS_VIEWBUTTON_TOOLTIP): Ditto.
3055
3056 * resource.h: Likewise, add identifiers for tooltip resources.
3057
3058 * window.h: Add includes.
3059 (Window::TooltipHandle): Add new private data structure.
3060 (Window::TooltipStrings): Ditto.
3061 (Window::ActivateTooltips): Define new function to support tooltip
3062 functionality.
3063 (Window::SetTooltipState): Ditto.
3064 (Window::AddTooltip): Ditto.
322281d3 3065 (Window::TooltipNotificationHandler): Ditto.
37f49caf
BD
3066
3067 * window.cc (Window::Window): Initialize handle to NULL.
3068 (Window::~Window): Call DestroyWindow on tooltip control if it was
3069 activated.
3070 (Window::ActivateTooltips): New function to activate the tooltip
3071 control.
3072 (Window::SetTooltipState): New function to allow toggling of
3073 tooltips.
3074 (Window::AddTooltip): New function that adds a tooltip to a given
3075 control in a given window. Also implement overloaded versions that
3076 provide simpler interface and the ability to use a string resource.
3077 (Window::TooltipNotificationHandler): New function to handle
3078 TTN_GETDISPINFO notification messages.
3079
30802005-05-05 Brian Dessent <brian@dessent.net>
4c90a532 3081
9a8a04fc
BD
3082 * resource.h: Reorganize. Group by type, and give each its own
3083 range of IDs. Regenerate IDs accordingly.
3084 (IDD_CHOOSER): Remove obsolete and unused symbol.
3085
9e6e3c68
BD
30862005-05-05 Brian Dessent <brian@dessent.net>
3087
3088 * root.h (class RootPage): Add missing virtual to OnMessageCmd.
3089
746fff8d
BD
30902005-05-05 Brian Dessent <brian@dessent.net>
3091
3092 * root.cc (dialog_cmd): Remove. Use OnMessageCmd instead.
3093 (RootPage::Create): Accomodate above change.
3094
3095 * root.h (class RootPage): Add prototype for OnMessageCmd.
3096
3097 * res.rc (IDD_ROOT): Fix broken button groups. Correct the order of
ca2b7505 3098 the controls and use of WS_GROUP so that the radio buttons act
746fff8d
BD
3099 correctly.
3100
d2a3615c
MB
31012005-05-05 Max Bowsher <maxb@ukf.net>
3102
3103 Bulk rename of String++ member cstr_oneuse () to c_str () for
3104 similarity to std::string.
3105
3106 * Exception.cc
3107 * IniDBBuilderPackage.cc
3108 * IniParseFindVisitor.cc
3109 * LogFile.cc
3110 * PickCategoryLine.cc
3111 * PickPackageLine.cc
3112 * PickView.cc
3113 * String++.cc
3114 * String++.h
3115 * archive.cc
3116 * cygpackage.cc
3117 * desktop.cc
3118 * dialog.cc
3119 * diskfull.cc
3120 * download.cc
3121 * filemanip.cc
3122 * find.cc
3123 * geturl.cc
3124 * ini.cc
3125 * install.cc
3126 * io_stream.cc
3127 * io_stream_cygfile.cc
3128 * io_stream_file.cc
3129 * localdir.cc
3130 * mount.cc
3131 * nio-http.cc
3132 * package_db.cc
3133 * package_meta.cc
3134 * package_source.h
3135 * postinstall.cc
3136 * proppage.cc
3137 * root.cc
3138 * script.cc
3139 * site.cc
3140 * splash.cc
3141 * threebar.cc
3142 * window.cc
3143
3a8630fd
MB
31442005-05-05 Max Bowsher <maxb@ukf.net>
3145
3146 Some String++ refactoring, setting out in the general direction of
3147 eventually just using the STL std::string, not our own class.
3148
3149 * String++.cc (String::cstr, String::cstr () const): Remove.
3150 (new_cstr_char_array): New function.
3151 * String++.h: Sync with above.
3152 Remove irrelevant "class io_stream;" declaration.
3153
3154 * cygpackage.h: Add "class io_stream;" declaration, now no longer
3155 being supplied by side-effect.
3156
3157 * filemanip.cc: Remove unneeded includes, add "using namespace std;".
3158 (parse_filename): Exchange some awkward pointer manipulation for
3159 std::string usage. Use new_cstr_char_array ().
3160 * filemanip.h: Sync with above.
3161 (fileparse): Improve style of declaration.
3162
3163 * io_stream_cygfile.cc (io_stream_cygfile::normalise):
3164 Use new_cstr_char_array ().
3165 * site.cc (site_list_type::init, get_site_list): Ditto.
3166
daab12c7
BD
31672005-05-05 Brian Dessent <brian@dessent.net>
3168
03e84729
MB
3169 * ControlAdjuster.h (enum ControlPosition): Declare new resizing
3170 methods CP_STRETCH_LEFTHALF and CP_STRETCH_RIGHTHALF, and their
3171 TOP/BOTTOM aliases.
daab12c7 3172
03e84729
MB
3173 * ControlAdjuster.cc (ControlAdjuster::ControlInfo::adjust):
3174 Implement CP_STRETCH_LEFTHALF and CP_STRETCH_RIGHTHALF, which are
3175 designed to resize elements in a two-column layout.
daab12c7 3176
03e84729
MB
3177 * localdir.h (class LocalDirPage): Remove constructor implementation
3178 from here...
daab12c7 3179
03e84729
MB
3180 * localdir.cc (LocalDirPage::LocalDirPage): ...to here, and call
3181 AddControlsInfo on initialization.
3182 (static LocaldirControlsInfo): Add. Define sizing rules for dialog
daab12c7
BD
3183 elements.
3184
03e84729
MB
3185 * proppage.h: Add includes.
3186 (PropertyPage::ClickableURL):
3187 Declare new storage type for internal use by class.
3188 (PropertyPage::urls): Likewise.
3189 (PropertyPage::urlWinProc): Add declaration.
daab12c7
BD
3190 (PropertyPage::makeClickable): Likewise.
3191
03e84729
MB
3192 * proppage.cc: Add includes.
3193 (PropertyPage::DialogProc): Implement handler for WM_CTLCOLORSTATIC
3194 message. Supports static controls that have been turned into
3195 clickable hyperlinks.
3196 (static PropertyPage::urls): Declare.
3197 (PropertyPage::makeClickable): Implement new member function that
3198 provides user interface for making text into clickable URLs.
3199 (PropertyPage::urlWinProc): Implement new private member function used
3200 as a windowproc for subclassing a static control.
3201
3202 * resource.h (IDC_SPLASH_URL, IDC_FILEMODES_LINK, IDC_ROOTDIR_GRP,
3203 IDC_INSTALLFOR_GRP, IDC_ALLUSERS_TEXT, IDC_JUSTME_TEXT, IDC_MODE_GRP,
3204 IDC_MODE_TEXT, IDC_MODE_BIN, IDC_LOCALDIR_GRP, IDC_SPLASH_TEXT,
3205 IDC_SPLASH_ICON, IDC_SPLASH_COPYR): Add. Replaces anonymous
daab12c7
BD
3206 IDC_STATIC ids, so that controls can be referenced by the resizer.
3207
03e84729
MB
3208 * res.rc (IDD_LOCAL_DIR): Rearrange controls to match top-down order
3209 in the dialog. Fold long lines. Replace anonymous IDC_STATIC ids.
3210 (IDD_ROOT): Reorder in same manner. Replace anonymous IDC_STATIC ids.
3211 Add descriptive text of each option, and hyperlink for more
3212 information. Mark suggested choice as "(RECOMMENDED)". Swap order of
3213 'unix'/'dos' radio buttons so that recommended choice is first in both
3214 columns.
3215 (IDD_SPLASH): Reorder elements to match top-down order of dialog, fold
3216 long lines. Add descriptive paragraph, remove anonymous ids. Update
3217 copyright text, replace sources.redhat.com with cygwin.com.
daab12c7 3218
03e84729 3219 * root.h (class RootPage): Remove constructor implementation from
daab12c7
BD
3220 here...
3221
03e84729
MB
3222 * root.cc: ...to here, and call AddControlInfo.
3223 (static RootControlsInfo): Add. Populate with resizing data.
daab12c7
BD
3224 (RootPage::OnInit): Make text a clickable hyperlink.
3225
03e84729 3226 * splash.h (class SplashPage): Likewise, move constructor from
daab12c7
BD
3227 here...
3228
03e84729
MB
3229 * splash.cc: ...to here. Call AddControlInfo.
3230 (static SplashControlsInfo): Add and populate.
3231 (SplashPage::Create): Make link on splash page a clickable hyperlink.
daab12c7 3232
03e84729
MB
3233 * window.h: Add include.
3234 (class Window): Store allocated fonts with a vector instead of fixed
3235 array. Change indentation of setParent to be consistent.
daab12c7 3236
03e84729
MB
3237 * window.cc (Window::Window): Remove FontCounter.
3238 (Window::~Window): Likewise. Iterate over vector of fonts instead.
3239 (Window::SetDlgItemFont): Use vector.
daab12c7 3240
042d83f9
MB
32412005-05-05 Max Bowsher <maxb@ukf.net>
3242
3243 * Makefile.am (EXTRA_DIST, inilint_SOURCES):
3244 Sync with several recent changes.
3245
a38fde1a
BD
32462005-05-05 Brian Dessent <brian@dessent.net>
3247
03e84729 3248 * res.rc: (CREATEPROCESS_MANIFEST_RESOURCE_ID): Include section
a38fde1a
BD
3249 comment.
3250
dd267526
BD
32512005-05-05 Brian Dessent <brian@dessent.net>
3252
3253 * res.rc: (IDC_CHOOSE): Widen 'view' button by 6px horizontally and
3254 4px vertically. Adjust other controls to accomodate.
3255 (CREATEPROCESS_MANIFEST_RESOURCE_ID): Define so that manifest is
3256 included in the binary.
3257
3258 * setup.exe.manifest: New file. Results in common controls with
3259 themed appearance on modern versions of Windows.
3260
83524e5b
MB
32612005-05-05 Brian Dessent <brian@dessent.net>
3262
03e84729 3263 * main.cc (WinMain): Change conditional to avoid spurious error
83524e5b 3264 message on success. Include reason for failure in log message.
96f50f64 3265
071f7af3
MB
32662005-05-04 Max Bowsher <maxb@ukf.net>
3267
3268 * state.cc, state.h (net_method, net_proxy_host, net_proxy_port,)
3269 (net_user, net_passwd, net_proxy_user, net_proxy_passwd,)
3270 Inet_ftp_user, net_ftp_passwd):
3271 Move these global variables to be static variables of the NetIO class.
3272
3273 * netio.h, netio.cc (net_method, net_proxy_host, net_proxy_port,)
3274 (net_user, net_passwd, net_proxy_user, net_proxy_passwd,)
3275 net_ftp_user, net_ftp_passwd):
3276 As above.
3277
3278 * ConnectionSetting.cc, net.cc:
3279 Change include, refer to variables in new location.
3280
0a49fe44
MB
32812005-05-04 Max Bowsher <maxb@ukf.net>
3282
3283 * PickLine.cc: Remove file - redundant.
3284 * Makefile.am (setup_SOURCES): Adjust.
3285
7f3324d2
MB
32862005-05-04 Max Bowsher <maxb@ukf.net>
3287
3288 * package_version.h (packageversion::set_requirements):
3289 Remove deftrust argument default value.
3290
32912005-05-04 Max Bowsher <maxb@ukf.net>
2ef95e81
MB
3292
3293 * package_version.cc (DependencyProcessor): Remove trivial class.
3294 (select, processOneDependency): Do not use DependencyProcessor, just
3295 pass parameters normally.
3296
d20a2e29
MB
32972005-05-04 Brian Dessent <brian@dessent.net>
3298
3299 Fix bug #820: Clicking Curr, etc., causes some dependencies to not
3300 be installed.
3301
3302 * choose.cc (ChooserPage::changeTrust):
3303 Add a missing "packagedb.markUnVisited ()".
3304
9bd063e0
MB
33052005-05-03 Max Bowsher <maxb@ukf.net>
3306
3307 * PickCategoryLine.cc (PickCategoryLine::click):
3308 * PickPackageLine.cc (PickPackageLine::click):
3309 Abandon use of trivial packagemeta::PrepareForVisit() wrapper.
3310
3311 * package_meta.h (packagemeta::PrepareForVisit): Remove.
3312 * package_meta.cc (packagemeta::PrepareForVisit): Remove.
3313
97b50ad7
MB
33142005-05-03 Max Bowsher <maxb@ukf.net>
3315
3316 * choose.h (ChooserPage::ifChecked): Remove.
3317 (ChooserPage::changeTrust): Convert from template to ordinary function.
3318 * choose.cc (ChooserPage::changeTrust): As above, plus avoid the use
3319 of custom class SetRequirement, when bind2nd(mem_fun(...),...) can
3320 achieve the same effect.
3321 * package_meta.h (SetRequirement): Remove, now unused.
3322
98b84622
MB
33232005-05-03 Max Bowsher <maxb@ukf.net>
3324
3325 * package_meta.h (packagemeta::set_requirements):
3326 Remove default argument which seems inappropriate.
3327 * PickPackageLine.cc (PickPackageLine::click):
3328 Make an argument explicit, and not that it seems like the wrong value.
3329
7c86285f
MB
33302005-05-03 Brian Dessent <brian@dessent.net>
3331
3332 Fix part of bug #853 - proxy port not remembered.
3333
3334 * net.cc (doing_loading): New static boolean.
3335 (load_dialog): Use the boolean to prevent save_dialog() from taking
3336 action due to field changes due to initialization.
3337 (save_dialog): Check the boolean and respond appropriately.
3338
9ad9a0b0
MB
33392005-04-19 Max Bowsher <maxb@ukf.net>
3340
3341 * postinstall.cc (RunFindVisitor::visitFile): Fix crash on
3342 encountering a postinstall script with a name of 4 characters or less.
3343 Bug introduced on 2004-12-25.
3344
946198be
MB
33452005-04-05 Max Bowsher <maxb@ukf.net>
3346
3347 The Big Cleanup: Phase "rfc1738"
3348
3349 * rfc1738.cc, rfc1738.h: Delete.
3350 * csu_util/rfc1738.cc: Reimport latest version from upstream source.
3351 Make thread-safe. Rewrite C++ wrapper in terms of std::string.
3352 Document the divergences from the upstream source.
3353 * csu_util/rfc1738.h: Recreate for the std::string version of the
3354 C++ wrapper.
3355
3356 * Makefile.am (setup_SOURCES): Sync with added/removed files.
3357 * IniParseFindVisitor.cc: Modify #includes.
3358 (IniParseFindVisitor::visitFile): Change function name, as the new
3359 C++ wrapper does not contain an irregularity that the old one did.
3360 * download.cc: Modify #includes.
3361 * ini.cc: Modify #includes.
3362
e76de0f5
MB
33632005-04-05 Max Bowsher <maxb@ukf.net>
3364
3365 Remove setup's internal compression libraries, instead relying on the
3366 mingw-foo packages which have been part of the Cygwin net distribution
3367 for some time now. At the same time, reorganize the README file to
3368 inform about the change, and make some additional tidy-ups there whilst
3369 working there.
3370
3371 * GUIDELINES: Remove, contents transferred to README.
3372 * README: Add build instructions. Delete unconfirmed and fixed bugs
3373 sections. Incorporate the former contents of GUIDELINES.
3374
3375 * bz2lib/: Remove.
3376 * zlib/: Remove.
ca2b7505 3377 * Makefile.am (DIST_SUBDIRS, SUBDIRS):
e76de0f5
MB
3378 * configure.in: Remove AC_CONFIG_SUBDIRS for removed subdirs.
3379 * compress_bz.h: Remove complex _WIN32 preprocessor conditional.
3380 * compress_gz.h: Fix #include file name.
3381 * archive_tar_file.cc: Remove unused #include.
3382 * install.cc: Remove unused #include.
3383
069a187a
MB
33842005-01-27 Max Bowsher <maxb@ukf.net>
3385
3386 Set CYGWIN=nontsec, for postinstall scripts.
3387
3388 * main.cc (main): putenv("CYGWIN=nontsec").
3389
b4cf6208
MB
33902005-01-27 Bas van Gompel <patch-cygsup.buzz@bavag.tmfweb.nl>
3391
3392 Fix corrupt display of ini parse percentage in log file.
3393
3394 * ini.cc (GuiParseFeedback): Use a sensible data type for lastpct.
3395
eff7a094
MB
33962004-12-29 Max Bowsher <maxb@ukf.net>
3397
3398 * site.cc (get_site_list): Filter the incoming mirrors list to contain
3399 only URL schemes that we can read.
3400
2c539780
MB
34012004-12-28 Max Bowsher <maxb@ukf.net>
3402
3403 The Big Cleanup: Phase "hash"
3404
3405 * hash.cc, hash.h: Delete.
3406 * Makefile.am (setup_SOURCES): Sync with deleted files.
3407
3408 * package_mets: Modify includes.
3409 (standard_dirs): Remove.
3410 (hash::add_subdirs): Remove.
3411 (packagemeta::uninstall): Re-implement using STL set instead of
3412 homebrew hash.
3413
4abaa9f9
MB
34142004-12-28 Max Bowsher <maxb@ukf.net>
3415
3416 * String++.h (operator std::string): Take care to never do
3417 std::string((char*)NULL) - it causes a hang!
3418
a77b6167
MB
34192004-12-27 Max Bowsher <maxb@ukf.net>
3420
3421 The Big Cleanup: Phase "log"
3422
3423 * log.cc, log.h: Delete old C-style compatibility wrapper around the
3424 logging subsystem.
3425 * Makefile.am (setup_SOURCES): Sync with deleted files.
3426
3427 * AntiVirus.cc, archive_tar_file.cc, ini.cc, install.cc,
3428 * io_stream_cygfile.cc, localdir.cc, msg.cc, net.cc, netio.cc,
3429 * netio.h, nio-ftp.cc, nio-ftp.h, root.cc, source.cc:
3430 Throughout, refine includes, and update code using the old
3431 compatibility wrapper to C++ streams style code.
3432
b16e07fc
MB
34332004-12-27 Max Bowsher <maxb@ukf.net>
3434
3435 * compress.cc: Refine includes. Remove placeholder function
3436 definitions. Make destructor an empty function.
3437 * compress.h: Refine includes. Make placeholder functions pure
3438 virtual. Add missing const on buffer argument to write function,
3439 to match derived classes.
3440 * compress_bz.cc, compress_gz.cc: Refine includes. Throw exception,
3441 rather than logging and returning an error, when an unimplemented
3442 function is called.
3443 * compress_bz.h, compress_gz.h: Refine includes.
3444
2b734ec7
MB
34452004-12-26 Max Bowsher <maxb@ukf.net>
3446
3447 The Big Cleanup: Phase "version"
3448
3449 * String++.h (operator std::string): Add.
3450 * desktop.cc, fromcwd.cc: Remove irrelevant include.
3451
3452 * version.cc, version.h: Delete, replacing all functionality in new
3453 files.
3454
3455 * setup_version.h: Add, taking over declaration of generated version
3456 symbol functionality.
3457
3458 * Makefile.am (setup_SOURCES): Sync with new/deleted files.
3459 (setup_version.c): Rename the symbol 'version' to 'setup_version'.
3460 * main.cc: Modify includes.
3461 (main): Adapt to setup_version rename.
3462 * splash.cc: Modify includes.
3463 (SplashPage::OnInit): Adapt to setup_version rename.
3464
3465 * csu_util/version_compare.cc, csu_util/version_compare.h: Add,
3466 containing a completely rewritten replacement for canonical_version().
3467
3468 * IniDBBuilderPackage.cc: Modify includes.
3469 (IniDBBuilderPackage::buildVersion): Use new version_compare API.
3470 * ini.cc: Modify includes.
3471 (setup_version): Rename...
3472 (ini_setup_version): ...to this.
3473 (do_local_ini, do_remote_ini): Adapt to above change.
3474 (do_ini_thread): Adapt to above change. Use new version_compare API.
3475
0f45aabe
MB
34762004-12-25 Max Bowsher <maxb@ukf.net>
3477
3478 * install.cc (Installer::installOneSource): Remove a stray "break;"
3479 left over from the switch-case -> if-else conversion in the previous
3480 change.
3481
4875ac88
MB
34822004-12-25 Max Bowsher <maxb@ukf.net>
3483
3484 The Big Cleanup: Phase "win32"
3485
3486 * win32.h: Major overhaul. Document why we use _WIN32_IE. Move out
3487 fragment dealing with alloca() to the single file in which it is used.
3488 Remove fragment dealing with _MAX_PATH, and convert all uses of it
3489 elsewhere to MAX_PATH. Remove random include of <stdarg.h>. Remove
3490 NOCOMATTRIBUTE, as setup contains no code which it affects. Remove
3491 includes of <wininet.h> and <windowsx.h> - see later in this log.
3492 (IsWindowsNT): New inline function, a much simpler implementation of
3493 Win32::OS().
3494
3495 * win32.cc: Delete.
3496
3497 * Makefile.am (setup_SOURCES): Remove "win32.cc".
3498
3499 * AntiVirus.cc (detect), PickPackageLine.cc (PickPackageLine::paint),
3500 * install.c (Installer::installOneSource):
3501 Use IsWindowsNT(), not Win32::OS().
3502 * main.cc (main): Use IsWindowsNT(), not locally defined iswinnt.
3503
3504 * PickView.cc (PickView::WindowProc), netio.cc (auth_proc),
3505 * proppage.cc (PropertyPage::DialogProc):
3506 Avoid using obfuscating macros from <windowsx.h>.
3507
3508 * archive.cc: Include or #define alloca() in the only file in which
3509 it is used.
3510
3511 * nio-ie5.h: Include <wininet.h> here, where it is actually needed,
3512 rather than in "win32.h" which is included almost everywhere.
3513
3514 * archive_tar.cc, archive_tar.h, cygpackage.cc, cygpackage.h,
3515 * desktop.cc, find.cc, install.cc, main.cc, mklink2.c, mount.cc,
3516 * script.cc: Use MAX_PATH, not _MAX_PATH.
3517
f4a981ab
MB
35182004-12-25 Max Bowsher <maxb@ukf.net>
3519
3520 Remove some overcomplications.
3521
3522 * Makefile.am (setup_SOURCES): Remove FilterVisitor.{cc,h}.
3523 * FilterVisitor.cc, FilterVisitor.h: Delete.
3524 * String++.cc (strmatch, String::matches): Remove.
3525 * String++.h (String::matches): Remove.
3526 * postinstall.cc: Do not include "FilterVisitor.h".
3527 (RunFindVisitor): Exclude items with the extension ".done".
3528 (do_postinstall_thread): Remove overcomplicated exclusion of items
3529 with the extension ".done".
3530
768d880e
MB
35312004-12-24 Max Bowsher <maxb@ukf.net>
3532
3533 * String++.cc, String++.h: Remove unused and incomplete code.
3534 * LogFile.cc (LogFile::log_save): Don't leak memory.
3535 * filemanip.cc, geturl.cc, root.cc, version.cc:
3536 Don't pointlessly create temporary copies strings.
3537
db165a9a
MB
35382004-12-23 Max Bowsher <maxb@ukf.net>
3539
3540 * choose.cc (ChooserPage::OnNext): Relegate some overly verbose
3541 logging to an #ifdef DEBUG section.
3542 * geturl.h (dismiss_url_status_dialog): Remove stale function
3543 declaration, for which there is no definition.
3544 * io_stream_cygfile.cc (io_stream_cygfile::io_stream_cygfile):
3545 Motivated by the recent unexplained hang bug, add some extra logging.
3546
0229b1d7
MB
35472004-11-22 Max Bowsher <maxb@ukf.net>
3548
3549 * MD5++.cc, MD5++.h: Remove this class.
3550 * csu_util/MD5Sum.cc, csu_util/MD5Sum.h: New more complete MD5 class.
3551 * Makefile.am (setup_SOURCES): Adjust to new files.
3552 * download.cc (validateCachedPackage): Simplify, using the new class.
3553 * install.cc (md5_one): Ditto.
3554 * package_source.h (packagesource::md5): Change to be an object of the
3555 new class.
3556
2c4261a8
MB
35572004-11-22 Max Bowsher <maxb@ukf.net>
3558
ba102d1c
MB
3559 * main.cc (main): Fix bug in one of the 2004-11-19 commits.
3560 Avoid referring to the theLog pointer before it is set.
2c4261a8 3561
9132ff16
MB
35622004-11-20 Max Bowsher <maxb@ukf.net>
3563
3564 * res.rc (IDD_SOURCE): Clarify the radio-button option descriptions.
3565 Re-layout the radio buttons.
3566
6beebaa3
MB
35672004-11-20 Max Bowsher <maxb@ukf.net>
3568
3569 Repair the broken detection of wrongly-sized package files.
3570
3571 * download.cc (validateCachedPackage): Make static, since not used
3572 elsewhere. Improve logging. Migrate file-size tests to here, alongside
3573 the MD5 tests.
3574 (check_for_cached): Remove broken testing of file-size, now covered by
3575 the above. Code cleanups.
3576
54ff37c8
MB
35772004-11-19 Max Bowsher <maxb@ukf.net>
3578
3579 * package_version.cc (dumpAndList): Make dependencies much more
3580 readable in full log output.
3581
4d7a6eeb
MB
35822004-11-19 Max Bowsher <maxb@ukf.net>
3583
3584 * proppage.cc (PropertyPage::DialogProc): Wrap in a TOPLEVEL_CATCH
3585 block, since allowing exceptions to unwind into the guts of Windows is
3586 quite disasterous.
3587
c66b9174
MB
35882004-11-19 Max Bowsher <maxb@ukf.net>
3589
3590 * main.cc (main): Move option parsing code earlier - it must execute
3591 before any significant object creations, which might test options in
3592 their initialization.
3593
82b64f8a
MB
35942004-11-19 Max Bowsher <maxb@ukf.net>
3595
3596 * main.cc (main): Remove some junk code - either commented out, or
3597 contained within unreachable preprocessor conditional sections.
3598
4fa49408
MB
35992004-11-19 Max Bowsher <maxb@ukf.net>
3600
3601 * install.cc (Installer::installOneSource): Avoid leaking the open
3602 file handles of every tarball that is installed.
3603
0e9a5c4f
MB
36042004-11-19 Max Bowsher <maxb@ukf.net>
3605
3606 * package_source.h (packagesource::Canonical, packagesource::Base)
3607 (packagesource::Filename): Add "const" specification to accessor
3608 methods.
3609
6b68e703
MB
36102004-11-18 Max Bowsher <maxb@ukf.net>
3611
3612 * archive.h (archive::~archive): Define a pure virtual destructor to
3613 enforce the abstract nature of this class.
3614 * archive.cc (archive::~archive): Pure virtual destructors require an
3615 implementation! Add one.
3616 * io_stream.h (io_stream::destroyed): Remove this severely
3617 brain-damaged implementation of a weakly-enforced abstract class.
3618 The pure virtual destructor was strongly enforcing the abstract nature
3619 anyway.
3620 * io_stream.cc (io_stream::~io_stream): Empty out horribly pointless
3621 code from the pure virtual destructor.
3622 * archive_tar.cc (archive_tar::~archive_tar): Remove all
3623 reference to the removed "destroyed" member.
3624 * archive_tar_file.cc (archive_tar_file::~archive_tar_file): Ditto.
3625 * compress_bz.cc (compress_bz::~compress_bz): Ditto.
3626 * compress_gz.cc (compress_gz::~compress_gz): Ditto.
3627 * io_stream_cygfile.cc (io_stream_cygfile::~io_stream_cygfile): Ditto.
3628 * io_stream_file.cc (io_stream_file::~io_stream_file): Ditto.
3629 * io_stream_memory.cc (io_stream_memory::~io_stream_memory): Ditto.
3630
51200ef2
MB
36312004-11-17 Max Bowsher <maxb@ukf.net>
3632
3633 * mount.cc (create_mount): Fix operator precedence error introduced in
3634 first 2004-11-11 commit - warned of by gcc 3.3.3 but not 3.4.1 !
3635
f5d45c3b
MB
36362004-11-13 Max Bowsher <maxb@ukf.net>
3637
3638 Miscellaneous cleanup.
3639
3640 * geturl.cc (getUrlToStream): Make static.
3641 * geturl.h (getUrlToStream): Remove declaration.
3642
3643 * geturl.cc, geturl.h, netio.cc, netio.h, nio-ftp.cc, nio-ftp.h,
3644 nio-http.cc, nio-http.h:
3645 Remove unused "allow_ftp_auth" flag throughout.
3646
f4d80c3f
MB
36472004-11-11 Max Bowsher <maxb@ukf.net>
3648
3649 * libmd5-rfc: New directory, to hold code imported from the libmd5-rfc
3650 project in a clearly delineated fashion.
3651 * libmd5-rfc/README: New file.
3652 * md5.c, md5.h: Delete...
3653 * libmd5-rfc/md5.c, libmd5-rfc/md5.h: ...and replace with pristine
3654 versions from upstream (only change is restoration of upstream CVS
3655 keyword expansions).
3656 * libmd5-rfc/md5main.c: New file.
3657 * Makefile.ami (setup_SOURCES): Edit file paths.
3658 * download.cc, install.cc: Edit include paths.
3659
68d49419
MB
36602004-11-11 Max Bowsher <maxb@ukf.net>
3661
3662 * dialog.cc (fatal): Make capable of handling a passed-in error code,
3663 as an alternative to calling GetLastError().
3664 * dialog.h (fatal): Adjust prototype as above.
3665 * mount.cc (create_mount): Use the above to correctly report errors.
3666
af111c7d
MB
36672004-10-28 Max Bowsher <maxb@ukf.net>
3668
3669 * LogFile.cc (LogFile::getFileName), splash.cc (SplashPage::Create),
3670 threebar.cc (ThreeBarProgressPage::SetBar2):
3671 Migrate from cistring and string resources
3672 to String and string literals.
3673 * localdir.cc: Remove unneeded #include of "cistring.h".
3674 * cistring.cc, cistring.h: Remove this now-redundant class.
3675 * Makefile.am: Remove mention of the above removed files.
3676 * res.rc, resource.h: Remove obsolete strings and IDs, both those
3677 obseleted by and obselete before the above changes.
3678 * res.rc: Merge the 2 adjacent STRINGTABLEs.
3679
8a264069
MB
36802004-10-27 Max Bowsher <maxb@ukf.net>
3681
3682 * Makefile.am (setup_SOURCES): Add "RECTWrapper.h". It was missing.
3683
b4b8ab8d
MB
36842004-10-25 Bas van Gompel <cygsup-patch.buzz@bavag.tmfweb.nl>
3685
3686 * package_source.cc (packagesource::set_canonical):
3687 Fix one-off in 'base' when ini is in same dir as package.
3688
49560a44
MB
36892004-10-25 Max Bowsher <maxb@ukf.net>
3690
3691 * main.cc (next_dialog): Remove this legacy global variable.
3692 * download.cc (do_download_thread): Return a value instead of setting
3693 a global variable, then returning void.
3694 (do_download_reflector): Look for the next dialog code as a return
3695 value instead of a global variable.
3696
99ff5a8b
MB
36972004-10-25 Max Bowsher <maxb@ukf.net>
3698
3699 * port.h: Remove this redundant file - all contained definitions are
3700 duplicated in "win32.h".
3701 * Makefile.am, UserSetting.cc, UserSettings.cc, archive.cc,
3702 archive_tar.cc, archive_tar_file.cc, choose.cc, compress.cc,
3703 compress_bz.cc, compress_gz.cc, desktop.cc, find.cc, fromcwd.cc,
3704 iniparse.y, install.cc, io_stream_cygfile.cc, io_stream_file.cc,
3705 main.cc, netio.cc, site.cc, version.cc:
3706 Remove all references to "port.h".
3707
46d04e97
MB
37082004-10-25 Max Bowsher <maxb@ukf.net>
3709
3710 Fix compilation with w32api 3.1 and later.
3711
3712 * ControlAdjuster.h, RECTWrapper.h, cistring.h, propsheet.h,
3713 window.cc, window.h: Include "win32.h" not <windows.h> directly.
3714 * win32.h (WINBASEAPI): Define to empty string.
3715
5524909e
IP
37162004-09-13 Igor Pechtchanski <pechtcha@cs.nyu.edu>
3717
3718 * script.cc (run): Kill stdin when running scripts.
3719
84b9cc5e
MB
37202004-09-01 Max Bowsher <maxb@ukf.net>
3721
3722 * Makefile.am: Oops. Unwanted keyword expansion ate the code of the
3723 previous commit. Restore the code, escaped to not look like a keyword.
3724
012374fe
MB
37252004-09-01 Max Bowsher <maxb@ukf.net>
3726
3727 * Makefile.am: Simplify the shell incantation for getting the revision
3728 of ChangeLog from grep-and-sed to just sed.
3729
b4113ac0
MB
37302004-08-31 Max Bowsher <maxb@ukf.net>
3731
3732 Attain GCC 3.4 compatibility.
3733
3734 * PackageSpecification.h (PackageSpecification): Make the
3735 unnecessarily private copy-constructor public.
3736
fc2ba841
MB
37372004-08-30 Max Bowsher <maxb@ukf.net>
3738
3739 Rework the implementation of not including -Werror for specific files,
3740 to a way that does not require hardcoding modified automake output back
3741 into its input.
3742
3743 * Makefile.am (AM_CXXFLAGS, BASECXXFLAGS): Seperate out -Werror.
3744 (autoload.o): Drop this rule, -finline-functions is no longer required
3745 and -Werror is acceptable here now we have __attribute__ ((used)).
3746 (WARNONLY_CFLAGS, inilex.o): Drop these.
3747 (EXTRA_PROGRAMS): Add a fake "warnonly" program.
3748 (warnonly_CXXFLAGS): Set to the $(BASECXXFLAGS).
3749 (warnonly_SOURCES): Set to "inilex.cc".
3750 (EXTRA_setup_SOURCES): Set to $(warnonly_SOURCES).
3751 (setup_SOURCES): Remove "inilex.cc".
3752 (setup_LDADD): Add "warnonly-inilex.o".
3753
d3c2a043
MB
37542004-08-30 Max Bowsher <maxb@ukf.net>
3755
3756 Move closer to GCC 3.4 compatibility.
3757
3758 * IOStreamProvider.h, io_stream_cygfile.cc, io_stream_cygfile.h,
3759 io_stream_file.cc: Do not incorrectly use "enum" after it has been
3760 hidden inside a typedef.
3761 * archive.h: In "virtual func() = 0;", the 0 is a language construct,
3762 not some symbol that might evaluate to 0, and gcc 3.4 enforces this.
3763 * autoload.c (DllInfo.name): Silence warning by making const.
3764 (DLL, autoload_common): __attribute__ ((used)) is now required to
3765 prevent gcc being over-eager in it's optimization, and removing these
3766 seemingly-unused (used only from assembly) functions.
3767 Silences some warnings, too.
3768 * Makefile.am (AM_CXXFLAGS, AM_CFLAGS): The options
3769 -Wstrict-prototypes -Wmissing-prototypes do not apply to C++ and
3770 g++ 3.4 complains about them.
3771
072fb49a
MB
37722004-08-29 Max Bowsher <maxb@ukf.net>
3773
ca2b7505 3774 * Exception.h: Reformatting, #include more, remove incorrect and
072fb49a
MB
3775 less-than-useful comments.
3776 (TOPLEVEL_CATCH): New preprocessor macro.
3777
3778 * LogFile.cc (LogFile::operator()): Throw an exception object, not a
3779 char* string.
3780
3781 Wrap the top-level of each thread (including the main thread) in a
3782 try...catch block, in order to display a useful error message if an
3783 exception is not caught.
3784 * download.cc (do_download_reflector): Here ...
3785 * ini.cc (do_ini_thread_reflector): ... and here ...
3786 * install.cc (do_install_reflector: ... and here ...
3787 * main.cc (main): ... and here ...
3788 * postinstall.cc (do_postinstall_thread): ... and here ...
3789 * site.cc (do_download_site_info_thread): ... and here!
3790
3791 * msg.h: Include a missing header requirement.
3792 * res.rc (IDS_UNCAUGHT_EXCEPTION, IDS_UNCAUGHT_EXCEPTION_WITH_ERRNO):
3793 New strings.
3794 * resource.h (IDS_UNCAUGHT_EXCEPTION)
3795 (IDS_UNCAUGHT_EXCEPTION_WITH_ERRNO): New IDs.
3796
56c41dda
MB
37972004-08-28 Max Bowsher <maxb@ukf.net>
3798
3799 * res.rc (IDS_WINDOW_INIT_BADMSG): New string.
3800 * resource.h (IDS_WINDOW_INIT_BADMSG): New string resource ID.
3801 * window.cc (Window::FirstWindowProcReflector): Convert an abort()
3802 into a descriptive error.
3803
abdd4b38
MB
38042004-08-24 Max Bowsher <maxb@ukf.net>
3805
3806 The Doug Lee replacement malloc was no longer hooked up with the
3807 buildsystem in any way. Pruning the remaining unused file.
3808
3809 * dlmalloc.c: Removed.
3810
24649384
MB
38112004-08-18 Max Bowsher <maxb@ukf.net>
3812
ca2b7505 3813 "librsync is not wire-compatible with rsync 2.x, and is not likely
24649384
MB
3814 to be in the future." -- librsync.sourceforge.net
3815
3816 So, it is of no practical use to setup. Therefore, removing all
3817 rsync related files and code from setup.
3818
3819 * rsync: Directory removed.
3820 * Makefile.am: Remove rsync support from the buildsystem.
3821 * configure.in: Ditto.
3822 * README: Since it seems vanishingly unlikely that it will ever happen,
3823 remove rsync support from the wishlist.
3824 * io_stream_rsync.cc: Remove.
3825 * io_stream_rsync.h: Remove.
3826
2800a92a
RC
38272004-04-25 Robert Collins <rbtcollins@hotmail.com>
3828
24649384
MB
3829 * package_meta.cc (packagemeta::set_requirements): fix problem with
3830 libpcre0 not being pulled in automatically.
2800a92a 3831
304e9816
RC
38322004-04-25 Robert Collins <rbtcollins@hotmail.com>
3833
24649384
MB
3834 * IniDBBuilderPackage.cc (dumpAndList):
3835 Move out to packageversion for reuse.
304e9816 3836 * package_meta.cc (packagemeta::logAllVersions): log dependencies.
24649384
MB
3837 * package_version.cc (packageversion::depends):
3838 provide a const accessor.
304e9816
RC
3839 (dumpAndList): Moved from INIDBBuilder.cc.
3840 * package_version.h: declare new method and function.
3841
5419ce48
RC
38422003-12-21 Robert Collins <rbtcollins@hotmail.com>
3843
3844 * main.cc (main): Update to head libgetopt++ syntax.
3845
201741b7
RC
38462003-11-2 Robert Collins <rbtcollins@hotmail.com>
3847
3848 * ControlAdjuster.h (ControlPosition::CP_MIDDLE): Rename to
3849 CP_CENTERED.
3850 * ControlAdjuster.cc: Ditto.
3851
081bf320
RC
38522003-10-31 Frank Richter <frichter@gmx.li>
3853
ca2b7505
CF
3854 * localdir.cc (OnNext): When SelectDirectoryA() fails, display a
3855 message with the error returned from the system instead of just
081bf320
RC
3856 'could not change dir'. Also, offer the user to 'Retry', 'Ignore' the
3857 error or 'Abort' the directory change.
3858
4b6e5406
RC
38592003-10-31 Frank Richter <frichter@gmx.li>
3860
3861 * propsheet.cc (PropSheetWndProc): Don't do child resizing if a the
3862 window gets minimized. Otherwise some glitches (e.g. wrong child
3863 sizes) occur.
3864 Added support for WM_GETMINMAXINFO. Prevents the property sheet from
3865 getting smaller than the original size.
3866
576a2b0b
RC
38672003-11-1 Robert Collins <rbtcollins@hotmail.com>
3868
3869 * ControlAdjuster.h (ControlDimension): Add.
3870 (ControlAdjuster): Factor adjust functionality into ControlInfo.
3871 * ControlAdjuster.cc (ControlAdjuster::adjust): Ditto.
3872 (ControlAdjuster::ControlInfo::adjust): Ditto.
3873
a8d753b6
RC
38742003-10-31 Igor Pechtchanski <pechtcha@cs.nyu.edu>
3875
3876 * ControlAdjuster.h (ControlPosition): New enum type.
3877 (ControlInfo::horizontalPos, ControlInfo::verticalPos): New
3878 instance variables.
3879 (ControlInfo::anchorLeft, ControlInfo::anchorTop,
3880 ControlInfo::anchorRight, ControlInfo::anchorBottom): Remove.
3881 * ControlAdjuster.cc (ControlAdjuster::AdjustControls): Switch to
3882 using position specifiers instead of anchors.
3883 * choose.cc (ChooserControlsInfo): Ditto.
3884 * proppage.cc (DefaultControlsInfo): Ditto.
3885 * propsheet.cc (PropSheetControlsInfo): Ditto.
3886 * site.cc (SiteControlsInfo): Position specifiers for site
3887 selection dialog controls.
3888 * threebar.cc (ThreeBarControlsInfo): Position specifiers for
3889 progress dialog controls.
3890
c9feb168
RC
38912003-10-27 Ralf Habacker <ralf.habacker@freenet.de>
3892
3893 * main.cc (HelpOption): New instance.
3894 (main): Added help command line option handling.
3895 * localdir.cc (LocalDirOption): New instance.
3896 (LocalDirSetting::load): allow setting localdir from command line.
3897
ee91d9be
RC
38982003-10-16 Frank Richter <frichter@gmx.li>
3899
ca2b7505
CF
3900 * ControlAdjuster.cc: New file, helper to move elements of a dialog
3901 along when the it's resized.
ee91d9be
RC
3902 * ControlAdjuster.h: Ditto.
3903 * Makefile.am: Add new source files.
3904 * proppage.cc (PropertyPage::DialogProc): Adjust some common
3905 controls (Cygwin icon top right, separator below) when a page is
3906 resized.
3907 (PropertyPage::PropertyPage): Dito.
3908 * propsheet.cc (IsDialog): New. Test whether a window is a dialog.
3909 Used internally by resize logic.
3910 (EnumPages): New. Used internally by resize logic: resizes the
3911 property sheet's individual pages.
3912 (PropSheetWndProc): New. Hook for the propery sheet window proc.
3913 (PropSheetProc): More style tweaks, add maximize box and thick border
3914 as well. Hook into the property sheet's window proc.
3915 (PropSheet::AdjustPageSize): New. Adjust the metrics of a single page
3916 to fit nicely into the property sheet. Part of resize logic.
3917 * res.rc (All dialogs): The top-right Cygwin icon and top separator
ca2b7505 3918 now have IDs distinct from IDC_STATIC, so their metrics can be
ee91d9be
RC
3919 adjusted upon a resize. Also, all those Cygwin icons are at the exact
3920 same spot now.
ca2b7505 3921 * choose.cc (ChooserPage::ChooserPage): Now the controls on the
ee91d9be
RC
3922 chooser page move/size when the page size is changed.
3923 * choose.h: Dito.
3924
1622a084
RC
39252003-10-23 Jerry D. Hedden <jerry@hedden.us>
3926
3927 * ConnectionSetting.cc (ConnectionSetting::load): Load proxysettings.
3928 (ConnectionSetting::save): Save proxy settings.
3929
7f6de8c0
RC
39302003-10-07 Robert Collins <rbtcollins@hotmail.com>
3931
3932 * proppage.h (PropertyPage::wantsActivation): const correctness fix.
3933
587a67fc
MB
39342003-08-19 Max Bowsher <maxb@ukf.net>
3935
3936 * win32.h: Define NOMINMAX only if not already defined - because
3937 libstdc++-v3 3.3.1 defines NOMINMAX itself.
3938
58b12a06
MB
39392003-08-03 Max Bowsher <maxb@ukf.net>
3940
3941 * ChangeLog: Fix broken line-wrapping throughout. Clarify that
3942 "Ran automake" in 2003-07-26 entry was in bz2lib and zlib subdirs.
3943
56a7c49e
MB
39442003-08-03 Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>
3945
3946 * propsheet.cc (Copyright): Update copyright dates.
3947 (PropSheet::PropSheet): Remove NumPropPages initialization.
3948 (PropSheet::CreatePages): Use PropertyPages.size() instead of
3949 NumPropPages.
3950 (PropSheet::Create): Ditto.
3951 (PropSheet::AddPage): Change to use new PropertyPages std::vector<>.
3952 * propsheet.h (Copyright): Update copyright dates.
3953 (File Scope): Include <vector>.
3954 (PropSheet::PropertyPages): Change from array to vector<>.
3955 (PropSheet::NumPropPages): Remove.
3956
25130a4d
MB
39572003-08-02 Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>
3958
3959 Changes modified by Max Bowsher <maxb@ukf.net>
3960 * splash.cc (Copyright): Update copyright dates.
3961 (SplashPage::OnInit): Remove call to SetDlgItemFont(). Now handled in
3962 base class.
3963 * proppage.h (PropertyPage::setTitleFont): Declare.
3964 * proppage.cc (Copyright): Update copyright dates.
3965 (PropertyPage::DialogProc WM_INITDIALOG): Move all font setting code,
3966 including that from splash.cc into new function...
3967 (PropertyPage::setTitleFont): Create, using moved code. Change font
3968 "MS Sans Serif" to "MS Shell Dlg" in line with recent res.rc change.
3969 Set font for IDC_STATIC_WELCOME_TITLE here, to allow easy re-use of
3970 style for future "Finished" page.
3971
62489576
MB
39722003-08-02 Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>
3973
3974 * propsheet.cc: Include "resource.h".
3975 (PropSheet::Create): Add the Cygwin icon in the left of the title bar.
3976
106d8160
MB
39772003-08-01 Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>
3978
3979 * proppage.cc (PropertyPage::FirstDialogProcReflector): Modify comment.
3980
5296fc07
MB
39812003-08-01 Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>
3982
3983 * proppage.h (Copyright): Update copyright dates.
3984 (PropertyPage): Document OnNext and OnBack.
3985
5039f845
MB
39862003-07-31 Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>
3987
3988 * proppage.cc (PropertyPage::Create): Use more self-documenting
3989 MAKEINTRESOURCE() instead of cast to LPCSTR.
3990
672d28ad
RC
39912003-07-31 Robert Collins <rbtcollins@hotmail.com>
3992
3993 * README: Mark completed items complete.
3994
c59b8da6
MB
39952003-07-31 Pierre Humblet <pierre.humblet@ieee.org>
3996
3997 * main.cc (set_default_sec): Set token owner from token user.
3998 Always try to set the token primary group to Users or Admins.
3999
25e21380
IP
40002003-07-30 Igor Pechtchanski <pechtcha@cs.nyu.edu>
4001
4002 * String++.h (String::replace): New instance functions.
4003 * String++.cc (String::replace): Implement.
4004 * filemanip.cc (backslash): Change to use String::replace.
4005 * desktop.cc (make_cygwin_bat): Escape '%' in path.
4006
346627e7
IP
40072003-07-30 Igor Pechtchanski <pechtcha@cs.nyu.edu>
4008
4009 * String++.h (TOSTRING): New macro.
4010 * UserSettings.cc (UserSettings::deRegisterSetting): Fix
4011 erroneous __LINE__/__FILE__ usage.
4012 * download.cc (validateCachedPackage, check_for_cached): Ditto.
4013 * geturl.cc (getUrlToStream): Ditto.
4014 * install.cc (md5_one): Ditto.
4015
d9f4a2ba
MB
40162003-07-30 Max Bowsher <maxb@ukf.net>
4017
4018 * ini.cc (do_ini_thread): Return bool.
4019 (do_ini_thread_reflector): Put returned bool in lParam.
4020 * threebar.cc (WM_APP_SETUP_INI_DOWNLOAD_COMPLETE): Rework for new
4021 meaning of lParam. Replace erroneous use of do_fromcwd with
4022 SetActivePageByID (IDD_SOURCE).
4023
39b42ff3
RC
40242003-07-30 Robert Collins <rbtcollins@hotmail.com>
4025
4026 * ConnectionSetting.cc: New file, persist connection type selection.
4027 * ConnectionSetting.h: Ditto.
4028 * net.cc: Hold a ConnectionSetting instance to trigger the logic.
4029 (NetPage::OnInit): Don't force net_method to any value.
4030 * Makefile.am: Add new source files.
4031
6ff96351
RC
40322003-07-30 Robert Collins <rbtcollins@hotmail.com>
4033
4034 * SourceSetting.cc: New file, persist source selection.
4035 * SourceSetting.h: Ditto.
4036 * source.cc: Hold a Source setting instance to trigger the logic.
4037 * Makefile.am: Add new source files.
4038
f0fd8856
RC
40392003-07-30 Robert Collins <rbtcollins@hotmail.com>
4040
4041 * UserSettings.h (UserSettings::settingFileForLoad): Extracted method
4042 from LocalDirSetting::load().
4043 * UserSettings.cc (UserSettings::settingFileForLoad): Ditto.
4044 * UserSettings.h (UserSettings::settingFileForSave): Extracted method
4045 from LocalDirSetting::save().
4046 * UserSettings.cc (UserSettings::settingFileForSave): Ditto.
4047 * localdir.cc (LocalDirSetting::load): Extract location logic to
4048 UserSettings.
4049 (LocalDirSetting::save): Extract location logic to UserSettings.
4050 * site.cc (SiteSetting::getSavedSites): Use
4051 UserSettings::settingFileForLoad.
4052 (SiteSetting::save): Use UserSettings::settingFileForSave.
4053
bb8e2353
RC
40542003-07-30 Robert Collins <rbtcollins@hotmail.com>
4055
ca2b7505 4056 * PickView.cc: Adjust ::GetClientRect(..) to the inherited one
bb8e2353
RC
4057 throughout.
4058
b28e9f01
MB
40592003-07-29 Max Bowsher <maxb@ukf.net>
4060
4061 Based on a patch by Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>.
4062 * AntiVirus.cc (AntiVirusPage::wantsActivation): Define.
4063 * AntiVirus.h (AntiVirusPage::wantsActivation): Declare.
4064 * localdir.cc (LocalDirPage::OnBack): Remove logic subsumed by
4065 RootPage::wantsActivation.
4066 * proppage.cc (PropertyPage::DialogProc): Call wantsActivation(),
4067 and skip to next page in sequence if activation is refused.
4068 * proppage.h (PropertyPage::wantsActivation): Default implementation.
4069 * root.cc (RootPage::wantsActivation): Define.
4070 * root.h (RootPage::wantsActivation): Declare.
4071 * source.cc: Don't include "AntiVirus.h".
4072 (SourcePage::OnNext): Remove logic subsumed by
4073 RootPage::wantsActivation.
4074 (SourcePage::OnBack): Remove logic subsumed by
4075 AntiVirusPage::wantsActivation.
4076 * splash.cc: Don't include "AntiVirus.h" or "dialog.h".
4077 (SplashPage::OnNext): Remove - subsumed by
4078 AntiVirusPage::wantsActivation.
4079 * splash.h (SplashPage::OnNext): Remove declaration.
4080
ec2dbbf0
RC
40812003-07-29 Robert Collins <rbtcollins@hotmail.com>
4082
4083 * PickView.h (PickView::refresh): New method.
4084 * PickView.cc (PickView::refresh): Extracted from various
4085 ChooserPage callers.
4086 * choose.cc: Use PickView::refresh wherever possible.
4087
bc16bb7d
RC
40882003-07-29 Robert Collins <rbtcollins@hotmail.com>
4089
4090 * choose.h (ChooserPage::createListView): Remove last parameter.
4091 (ChooserPage::getDefaultListViewSize): Extracted method.
4092 * choose.cc (ChooserPage::createListView): Remove last parameter.
4093 (ChooserPage::getDefaultListViewSize): Extracted method.
4094
952ea3fe
RC
40952003-07-29 Robert Collins <rbtcollins@hotmail.com>
4096
ca2b7505 4097 * choose.cc (ChooserPage::createListView): Remove unneeded
952ea3fe
RC
4098 parameter.
4099 * choose.h: Ditto.
4100
55c6e691
MB
41012003-07-29 Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>
4102
4103 * dialog.h (do_fromcwd): Change function declaration.
4104 * fromcwd.cc (do_fromcwd): Change return type to bool. Eliminate
4105 use of next_dialog, return true or false instead.
4106 * localdir.cc (LocalDirPage::OnNext): Use do_fromcwd()'s return
4107 value instead of next_dialog.
4108
2f18f94d
RC
41092003-07-29 Robert Collins <rbtcollins@hotmail.com>
4110
4111 * package_db.h (packagedb::fillMissingCategory): Move from ChooserPage.
4112 * choose.h (ChooserPage::fillMissingCategory): Delete.
4113 * package_db.cc (packagedb::fillMissingCategory): Move from ChooserPage.
ca2b7505 4114 * choose.cc (ChooserPage::fillMissingCategory): Delete and adjust
2f18f94d
RC
4115 callers.
4116
525531ca
RC
41172003-07-29 Robert Collins <rbtcollins@hotmail.com>
4118
4119 * PickView.h (CATEGORY_EXPANDED): Move from choose.h
4120 (CATEGORY_COLLAPSED): Move from choose.cc.
4121 (PickView::setViewMode): Move from ChooserPage.
4122 * choose.h (CATEGORY_EXPANDED): Delete.
4123 (CATEGORY_COLLAPSED): Delete.
4124 (ChooserPage::setViewMode): Delete.
4125 * PickView.cc (PickView::setViewMode): Move from ChooserPage.
4126 * chooser.cc (ChooserPage::setViewMode): Delete, and adjust callers
4127 throughout.
4128
0f61a6a4
MB
41292003-07-28 Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>
4130
4131 * AntiVirus.cc (AntiVirusPage::OnNext): Do not explicitly specify the
4132 page to display next, since it follows in the default page ordering
4133 anyway.
4134
6d751ec8
MB
41352003-07-28 Max Bowsher <maxb@ukf.net>
4136
4137 * dialog.h: (NEXT): Remove obsolete macro.
4138 * site.cc (save_dialog): Remove use of NEXT(), and non-functional
4139 unnecessary error handler.
4140
358712d8
RC
41412003-07-28 Robert Collins <rbtcollins@hotmail.com>
4142
4143 * package_meta.h (packagemeta::addToCategoryAll): Declare.
ca2b7505 4144 * package_meta.cc (packagemeta::addToCategoryAll): New method,
358712d8
RC
4145 separated to allow clear iteration.
4146 * choose.cc (ChooserPage::fillMissingCategory): BUGFIX: "all" is
4147 meant to be added unconditionally.
4148
31f0ccce
RC
41492003-07-27 Robert Collins <rbtcollins@hotmail.com>
4150
4151 * Generic.h: New file, home for generic programming tools.
4152 (visit_if): Move here from package_meta.cc.
4153 Adjust to be fully parameterised.
ca2b7505 4154 * package_meta.h (packagemeta::hasNoCategories): Query for generic
31f0ccce
RC
4155 programming.
4156 (packagemeta::setDefaultCategories): set categories for packages
4157 with none.
ca2b7505 4158 * package_meta.cc: Move visit_if out. Adjust users for
31f0ccce
RC
4159 full paramterised operation.
4160 (packagemeta::hasNoCategories): Implement.
4161 (packagemeta::setDefaultCategories): Implement.
4162 * choose.cc (ChooserPage::fillMissingCategory): Use visit_if to
4163 reduce duplicate code.
4164 (ChooserPage::setExistence): Delete.
ca2b7505 4165 * choose.h (ChooserPage::setExistence): Rename to
31f0ccce
RC
4166 packagedb::setExistence.
4167 * package_db.h (packagedb::setExistence): Declare.
4168 * package_db.cc (packagedb::setExistence): Copy from choose.cc
4169
dbdc1d9d
RC
41702003-07-27 Robert Collins <rbtcollins@hotmail.com>
4171
4172 * localdir.h (LocalDirPage::OnInit): Remove.
4173 * localdir.cc (LocalDirPage::OnInit): Move to LocalDirSetting
4174 ::load().
4175 (LocalDirSetting::load): Copied from LocalDirPage::OnInit.
4176 * site.h (SitePage::OnInit): Remove.
4177 (SitePage::getSavedSites): New member, replaces get_saved_sites.
ca2b7505 4178 (SitePage::registerSavedSite): New member, replaces
dbdc1d9d
RC
4179 register_saved_site.
4180 * site.cc (SitePage::OnInit): Move to SiteSetting::load().
4181 (SiteSetting::load): Copied from SitePage::OnInit.
4182 (SitePage::getSavedSites): Renamed from get_saved_sites.
4183 (SitePage::registerSavedSite): Renamed from register_saved_site.
4184 (do_download_site_info_thread): Don't look at the list size for
4185 determining if the download was successful.
4186
22120c90
RC
41872003-07-27 Robert Collins <rbtcollins@hotmail.com>
4188
ca2b7505 4189 * choose.h (ChooserPage::setViewMode): Remove HWND from
22120c90
RC
4190 signature.
4191 (ChooserPage::defaultTrust): Ditto.
4192 Move to PickView.
ca2b7505 4193 (ChooserPage::ifChecked): Use Window helper function
22120c90
RC
4194 IsButtonChecked.
4195 * choose.cc (ChooserPage::setViewMode): Use chooser->GetHWND()
4196 throughout.
4197 Update all callers with new signature.
4198 (ChooserPage::defaultTrust): Ditto.
4199 Move to PickView.
4200 * PickView.h (PickView::defaultTrust): Declare.
4201 * PickView.cc (PickView::defaultTrust): Copy from chooser.cc.
4202
9c9cfce7
RC
42032003-07-27 Robert Collins <rbtcollins@hotmail.com>
4204
4205 * PickView.h (PickView::lv): Eliminate.
4206 * PickView.cc (PickView::init): Replace use of lv with
4207 GetHWND().
ca2b7505 4208 (PickView::list_click): Ditto.
9c9cfce7
RC
4209 * choose.h (ChooserPage::lv): Eliminate.
4210 * choose.cc: Replace lv with chooser->GetHWND()
4211 throughout.
4212
d2be933d
RC
42132003-07-27 Robert Collins <rbtcollins@hotmail.com>
4214
4215 * PickView.h (PickView::chooser): Eliminate.
4216 (PickView::list_vscroll): Make non-static.
4217 (PickView::list_hscroll): Ditto.
4218 (PickView::list_click): Ditto.
4219 (PickView::paint): Ditto.
4220 * PickView.cc (PickView::list_vscroll): Eliminate use
4221 of PickView::chooser.
4222 (PickView::list_hscroll): Ditto.
4223 (PickView::list_click): Ditto.
4224 (PickView::paint): Ditto.
4225 * choose.cc (Chooser::createListView): Eliminate use
4226 of PickView::chooser.
4227
693916f8
RC
42282003-07-27 Robert Collins <rbtcollins@hotmail.com>
4229
4230 * PickView.h (PickView): Inherit from Window.
4231 (PickView::RegisterWindows): Move from ChooserPage.
4232 (PickView::listview_proc): Likewise.
4233 (PickView::paint): Ditto.
4234 (PickView::list_click): Ditto.
4235 (PickView::list_hscroll): Ditto.
4236 (PickView::list_vscroll): Ditto.
4237 (PickView::lv): Ditto.
4238 (PickView::chooser): Ditto.
4239 (PickView::Create): Override Windows::Create as we migrate.
4240 (PickView::registerWindowClass): Renamed RegisterWindows.
4241 (PickView::WindowClassAtom): Prevent double registration.
4242 (PickView::init): Declare.
4243 * PickView.cc: Adjust for new inheritance.
4244 (PickView::RegisterWindows): Move from ChooserPage.
4245 (PickView::listview_proc): Likewise.
4246 (PickView::paint): Ditto.
4247 (PickView::list_click): Ditto.
4248 (PickView::list_hscroll): Ditto.
4249 (PickView::list_vscroll): Ditto.
4250 (PickView::lv): Ditto.
4251 (PickView::chooser): Ditto.
4252 (PickView::Create): Introduce stub.
4253 (PickView::RegisterWindows): Rename
4254 (PickView::init): Extracted from constructor to allow
4255 reordering.
ca2b7505 4256 * chooser.h (ChooserPage::registerWindows): Rename to
693916f8
RC
4257 PickView::RegisterWindows.
4258 (ChooserPage::listview_proc): Likewise.
4259 (ChooserPage::paint): Ditto.
4260 (ChooserPage::list_click): Ditto.
4261 (ChooserPage::list_hscroll): Ditto.
4262 (ChooserPage::list_vscroll): Ditto.
ca2b7505 4263 (ChooserPage::lv): Duplicate into PickView, observe
693916f8
RC
4264 as non-static.
4265 (ChooserPage::chooser): Ditto.
4266 * chooser.cc (ChooserPage::registerWindows): Delete.
4267 (ChooserPage::listview_proc): Ditto.
4268 (ChooserPage::paint): Ditto.
4269 (ChooserPage::list_click): Ditto.
4270 (ChooserPage::list_hscroll): Ditto.
4271 (ChooserPage::list_vscroll): Ditto.
4272 (ChooserPage::createListView): Create() on PickView.
ca2b7505 4273 * window.h (Window::RegisterWindowClass): Make virtual
693916f8
RC
4274 to allow Create to become a Template Method, and rename
4275 to registerWindowClass as it's not static.
4276 * window.cc (Window::registerWindowClass): Ditto.
4277 (Window::FirstWindowProcReflector): BUGFIX: Set window
4278 handle to prevent races with the window procedure.
4279
724c2956
RC
42802003-07-27 Robert Collins <rbtcollins@hotmail.com>
4281
4282 * choose.cc (set_view_mode): Rename to ChooserPage::setViewMode.
4283 (default_trust): Rename to ChooserPage::defaultTrust.
4284 (fill_missing_category): Rename to ChooserPage::fillMissingCategory.
4285 (set_existence): Rename to ChooserPage::setExistence.
4286 (register_windows): Rename to ChooserPage::registerWindows.
4287 (listview_proc): Rename to ChooserPage::listview_proc.
4288 (paint): Rename to ChooserPage::paint.
4289 (list_click): Rename to ChooserPage::list_click.
4290 (list_hscroll): Rename to ChooserPage::list_hscroll.
4291 (list_vscroll): Rename to ChooserPage::list_vscroll.
4292 (lv): Rename to ChooserPage::lv.
4293 (chooser): Rename to ChooserPage::chooser.
4294 * choose.h (ChooserPage::setViewMode): Declare.
4295 (ChooserPage::defaultTrust): Declare.
4296 (ChooserPage::fillMissingCategory): Declare.
4297 (ChooserPage::setExistence): Declare.
4298 (ChooserPage::registerWindows): Declare.
4299 (ChooserPage::listview_proc): Declare.
4300 (ChooserPage::paint): Declare.
4301 (ChooserPage::list_click): Declare.
4302 (ChooserPage::list_hscroll): Declare.
4303 (ChooserPage::list_vscroll): Declare.
4304 (ChooserPage::lv): Declare.
4305 (ChooserPage::chooser): Declare.
4306
d05ae76a
RC
43072003-07-27 Robert Collins <rbtcollins@hotmail.com>
4308
ca2b7505 4309 * choose.cc (create_listview): Use for_each instead of explicit
d05ae76a
RC
4310 iteration.
4311 (create_listview): Rename to ChooserPage::createListview.
4312 * package_meta.h (packagemeta::set_requirements): Explicitly separate
4313 the 1 and 2 parameter versions.
4314
43152003-07-27 Robert Collins <rbtcollins@hotmail.com>
69711722
RC
4316
4317 * String++.h (String::operator !=): Declare for char * and String.
4318 * String++.cc (String::operator !=): Implement.
4319 * package_meta.cc(StringConcatenator): Move above all users.
4320 (_visit_if): Predicate support for visitors.
ca2b7505 4321 (packagemeta::getReadableCategoryList): Refactor to use
69711722
RC
4322 StringConcatenator with a predicate.
4323 * choose.h: Remove unneeded c++ guards.
4324
cda26207
RC
43252003-07-26 Robert Collins <rbtcollins@hotmail.com>
4326
58b12a06
MB
4327 * choose.cc (scan_downloaded_files): Rename to
4328 packagemeta::ScanDownloadedFiles.
cda26207
RC
4329 (scanAVersion): Rename to packageversion::scan.
4330 (GetParentRect): Rename to ChooserPage::getParentRect.
4331 * choose.h (ChooserPage::getParentRect): Declare.
4332 * package_meta.h (packagemeta::ScanDownloadedFiles): Declare.
4333 * package_version.h (packageversion::scan): Declare.
4334 * package_version.cc (packageversion::scan): Move from choose.cc
58b12a06
MB
4335 * package_meta.cc (packagemeta::ScanDownloadedFiles): Move from
4336 choose.cc
cda26207 4337
edc3c6fc
RC
43382003-07-26 Robert Collins <rbtcollins@hotmail.com>
4339
4340 * choose.cc (ChooserPage::OnNext): log before starting activity threads.
4341 (ChooserPage::OnInit): Remove temporary variable frame.
4342 (ChooserPage::setPrompt): Extract method from OnInit.
4343 (choose_inst_text): Remove unused variable.
4344 * choose.h(ChooserPage::setPrompt): Declare
4345 * res.rc (IDD_CHOOSE): Bugfix: the chooser was setting a non-present
4346 caption.
4347
d55e14fe
RC
43482003-07-26 Robert Collins <rbtcollins@hotmail.com>
4349
4350 Remove package specific code from choose.cc.
4351 Update copyrights where appropriate.
4352 * choose.cc(ChooserPage::OnNext): Extract logging to
4353 packagemeta::logSelectionStatus.
4354 * package_meta.cc(packagemeta::logSelectionStatus): Extract from
4355 ChooserPage::OnNext.
4356 (StringConcatenator): helper for logSelectionStatus.
4357 (action_caption): Make const.
4358 * package_meta.h(packagemeta): Declare logSelectionStatus.
4359 (packagemeta::action_caption): Make const.
4360 * package_version.cc(packageversion::sourcePackage): Make const.
4361 * package_version.h(packageversion::sourcePackage): Make const.
4362
12f8ac69
RC
43632003-07-26 Robert Collins <rbtcollins@hotmail.com>
4364
4365 * choose.cc: Update copyright.
4366 (ChooserPage::keepClicked): Extracted from OnMessageCmd.
4367 (ChooserPage::changeTrust): Ditto.
4368 * choose.h (ChooserPage): Declare keepClicked and changeTrust.
4369 (ChooserPage::ifChecked): Extracted from OnMessageCmd.
58b12a06
MB
4370 * package_meta.h (SetRequirement): Adapter for visiting package
4371 collections.
12f8ac69 4372
93d7e783
MB
43732003-07-26 Max Bowsher <maxb@ukf.net>
4374
4375 * tests/.cvsignore: New file, listing Makefile.in.
4376
dea6cc21
RC
43772003-07-26 Robert Collins <rbtcollins@hotmail.com>
4378
4379 Save used local cache dir from initial run of setup, so the user doesn't
4380 need to retype it.
58b12a06
MB
4381 * localdir.h (LocalDirSetting): UserSetting class for the local cache
4382 dir.
4383 * localdir.cc (LocalDirSetting::save): Replace save_local_dir, and
4384 update callers.
dea6cc21 4385
0df9be37
RC
43862003-07-26 Robert Collins <rbtcollins@hotmail.com>
4387
ca2b7505 4388 Save used site from initial run of setup, so the user doesn't need to
0df9be37
RC
4389 retype it.
4390 * main.cc (main): Load and save all user settings.
4391 * site.cc (SiteSetting::save): Migrate logic from save_site_url.
58b12a06
MB
4392 (SitePage::OnNext): Use ChosenSites.save() to remove uneeded
4393 save_site_url call.
0df9be37
RC
4394 (save_site_url): Delete.
4395 * site.h (save_site_url): Remove declaration.
4396 * .cvsignore: Update autoconf generated files.
4397
bf137801
RC
43982003-07-26 Robert Collins <rbtcollins@hotmail.com>
4399
4400 * tests/Makefile.am: Driver for test suite.
4401 * tests/UserSettingTest.cc: Test UserSetting interface.
4402 * tests/UserSettingsTest.cc: Test UserSettings interface.
4403 * Makefile.am: Add the tests dir to recurse into.
4404 * configure.in: Ditto.
58b12a06
MB
4405 * UserSetting.h: Add load and save methods to allow global
4406 serialisation.
bf137801
RC
4407 Add explicit copy and assignment operators to prevent synthetics.
4408 Make the constructor protected to prevent direct instantiation.
4409 * UserSettings.h (UserSettings::loadAllSettings): New method.
4410 (UserSettings::savedAllSettings): New method.
4411 * UserSettings.cc: Implement new methods.
4412 * site.cc: Implement stubs for new required UserSetting methods.
4413 * site.h (ChosenSite): Ditto.
58b12a06
MB
4414 * bz2lib/: Ran automake.
4415 * zlib/: Ran automake.
bf137801 4416
3d5a4f16
MB
44172003-07-23 Max Bowsher <maxb@ukf.net>
4418
4419 * desktop.cc (DesktopSetupPage::OnBack): Remove obsolete use of NEXT().
4420 * root.cc (RootPage::OnNext): Ditto.
4421 (RootPage::OnBack): Ditto.
4422 * install.cc (do_install_thread): Remove obsolete use of next_dialog.
4423 * main.cc (main): Ditto.
4424 * postinstall.cc (do_postinstall_thread): Ditto.
4425
7108d406
MB
44262003-07-23 Max Bowsher <maxb@ukf.net>
4427
4428 * dialog.h (do_choose, do_desktop, do_local_dir, do_net, do_other)
4429 (do_root, do_site, do_source, do_splash): Remove declarations, since
4430 these functions no longer exist.
4431
b1c23913
MB
44322003-07-23 Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>
4433
4434 * choose.cc (initialized): Remove obsolete file scope variable.
4435
d52a6cc8
MB
44362003-07-18 Max Bowsher <maxb@ukf.net>
4437
4438 * res.rc: Make caption of every dialog page begin with "Cygwin Setup".
4439 This aids recognition when minimized.
4440 Prompted by Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>.
4441
9d53f045
MB
44422003-07-10 Jeremy White <jwhite@codeweavers.com>
4443
4444 * mount.cc, root.cc, site.cc: Make StringOptions required,
4445 thereby making --longopt <parm> behave as a newbie would expect.
4446
12e726c4
MB
44472003-07-08 Max Bowsher <maxb@ukf.net>
4448
4449 * LogFile.h, cistring.h, dialog.h, diskfull.h, filemanip.h, geturl.h,
4450 hash.h, log.h, mkdir.h, mklink2.h, mount.h, msg.h, netio.h, nio-file.h,
4451 nio-ftp.h, nio-http.h, nio-ie5.h, port.h, simpsock.h, state.h,
4452 version.h: Add inclusion guard.
4453 * root.h: Standardize naming of inclusion guard.
4454
c93bc6d0
MB
44552003-06-23 Max Bowsher <maxb@ukf.net>
4456
4457 * AntiVirus.h, Exception.h, FilterVisitor.h, FindVisitor.h,
4458 IOStreamProvider.h, IniDBBuilder.h, IniDBBuilderPackage.h,
4459 IniParseFeedback.h, IniParseFindVisitor.h, LogSingleton.h, MD5++.h,
4460 PackageSpecification.h, PackageTrust.h, PickCategoryLine.h, PickLine.h,
4461 PickPackageLine.h, PickView.h, RECTWrapper.h, ScanFindVisitor.h,
4462 String++.h, UserSetting.h, UserSettings.h, archive.h, archive_tar.h,
4463 category.h, choose.h, compress.h, compress_bz.h, compress_gz.h,
4464 cygpackage.h, desktop.h, download.h, find.h, ini.h, io_stream.h,
4465 io_stream_cygfile.h, io_stream_file.h, io_stream_memory.h,
4466 io_stream_rsync.h, localdir.h, net.h, package_db.h, package_meta.h,
4467 package_source.h, package_version.h, proppage.h, propsheet.h, script.h,
4468 site.h, source.h, splash.h, threebar.h, win32.h, window.h:
4469 Standardize naming and placement of inclusion guards.
4470
4a2af5fb
MB
44712003-06-22 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
4472
4473 * res.rc (all dialogs): Change font from "MS Sans Serif" to
4474 "MS Shell Dlg".
4475
8b726ef6
MB
44762003-06-22 Max Bowsher <maxb@ukf.net>
4477
4478 * Makefile.am: Clarify comment.
4479 Derive AM_CFLAGS from AM_CXXFLAGS, rather than the other way around.
4480 (AM_CXXFLAGS): Remove -Wmissing-declarations - it is a C-only warning.
4481 (AM_CFLAGS): Add -Winline, and -Wmissing-declarations.
4482
1e9ebf8a
MB
44832003-06-22 Max Bowsher <maxb@ukf.net>
4484
4485 * rfc1738.cc (rfc1738_do_escape): Eliminate redundant conditional.
4486
0a539fe4
MB
44872003-06-05 Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>
4488
4489 * window.h (SETUP_WINDOW_H): Rename multi-include guard.
4490 (Copyright): Update.
4491 (RECTWrapper): New forward declaration.
4492 (Window::Create): Move.
4493 (Window::MoveWindow): New overload declaration.
4494 * window.cc: (RECTWrapper.h) Include.
4495 (Copyright): Update.
4496 (Window::FirstWindowProcReflector): Use reinterpret_cast<> instead
4497 of C-style casts.
4498 (Window::MoveWindow): New overload.
4499
3c0ca7aa
MB
45002003-05-31 Max Bowsher <maxb@ukf.net>
4501
4502 * res.rc: Resize title controls to fully fill available width.
4503
e0d021d0
MB
45042003-05-07 Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>
4505
4506 * RECTWrapper.h: New file.
4507
1e3b2ad4
RC
45082003-04-12 Robert Collins <rbtcollins@hotmail.com>
4509
4510 * script.cc (Script::extension): Extract method from Script::run.
4511 (Script::run): Extract extension generation to Script::extension.
4512 * script.h (Script::extension): Declare.
4513
2533f348
RC
45142003-04-12 Robert Collins <rbtcollins@hotmail.com>
4515
4516 * script.cc (run_script): Remove.
4517 (try_run_script): Inline method run_script.
4518 * script.h (run_script): Remove.
4519
34ea5b6d
RC
45202003-04-12 Robert Collins <rbtcollins@hotmail.com>
4521
4522 * postinstall.cc (RunScript::operator()): Use new run syntax.
4523 * script.h (Script::run): Eliminate to_log parameter.
4524 * script.cc (Script::run): Ditto.
4525 (run_script): Use new run syntax.
4526
9f27ab95
RC
45272003-04-12 Robert Collins <rbtcollins@hotmail.com>
4528
4529 * script.cc (Script::run): Eliminate temp variable 'f2'.
4530 Rename temp variable 'f2' to 'windowsName' for increased clarity.
4531
783ed9c5
RC
45322003-04-12 Robert Collins <rbtcollins@hotmail.com>
4533
4534 * script.cc (Script::run): Eliminate temp variable 'fname'.
4535
0900bd5b
RC
45362003-04-12 Robert Collins <rbtcollins@hotmail.com>
4537
4538 * script.cc (Script::run): Eliminate temp variable 'dir'.
4539
294e5067
RC
45402003-04-12 Robert Collins <rbtcollins@hotmail.com>
4541
4542 * script.cc (run_script): Always pass TRUE to Script::run.
4543 * script.h (run_script): Remove optional to_log parameter.
4544
a0e56f67
RC
45452003-04-12 Robert Collins <rbtcollins@hotmail.com>
4546
4547 * script.cc (run_script): Move functionality into Script.
4548 (Script::run): Absorb run_script.
4549
8c242540
RC
45502003-04-12 Robert Collins <rbtcollins@hotmail.com>
4551
4552 * PickCategoryLine.cc (PickCategoryLine::click): Tell packagemeta we
4553 are about to perform a visit.
4554 * PickPackageLine.cc (PickPackageLine::click): Tell packagemeta we
4555 are about to perform a visit.
ca2b7505 4556 * package_db.cc (packagedb::markUnVisited): Convenience wrapper -
8c242540
RC
4557 mark all packages as unvisited.
4558 * package_db.h (packagedb::markUnVisited): Declare.
4559 * package_meta.cc (packagemeta::PrepareForVisit): New static method
4560 to prepare for a loop-free visit.
4561 (packagemeta::packagemeta): Adjust for new member.
4562 (packagemeta::set_requirements): Only visit a node once.
4563 (packagemeta::visited): Get and Set methods for new member visited_.
4564 * package_meta.h (packagemeta::PrepareForVisit): Declare.
4565 (packagemeta::visited): Declare.
4566 (packagemeta::visited_): Declare.
4567
5f4b0e57
MB
45682003-04-07 Max Bowsher <maxb@ukf.net>
4569
4570 * download.cc: Add command line option to suppress MD5 checks.
4571 (validateCachedPackage): Test option and possibly skip.
4572
e46e15bf
RC
45732003-04-02 Robert Collins <rbtcollins@hotmail.com>
4574
4575 Merge in setup-200303-troubleshooting fixes.
4576
45772003-04-02 Robert Collins <rbtcollins@hotmail.com>
4578
4579 * main.cc (NTSecurity::setDefaultDACL): Reinstate commented code.
4580 (NTSecurity::setDefaultSecurity): Ditto.
4581
45822003-04-02 Robert Collins <rbtcollins@hotmail.com>
4583
4584 * main.cc (NTSecurity::setDefaultDACL): Use MS calculations for ACL
4585 buffer sizing.
4586
45872003-04-02 Robert Collins <rbtcollins@hotmail.com>
4588
4589 * main.cc (NTSecurity::setDefaultDACL): Sanity check memory allocation.
4590
45912003-04-02 Robert Collins <rbtcollins@hotmail.com>
4592
58b12a06
MB
4593 * main.cc (NTSecurity::setDefaultDACL): Adjust commented code for
4594 auto_ptr use.
e46e15bf
RC
4595
45962003-04-02 Robert Collins <rbtcollins@hotmail.com>
4597
4598 * main.cc (NTSecurity::NoteFailedAPI): Helper function.
4599 Use throughout NTSecurity routines.
4600 (NTSecurity::setDefaultDACL): Use dynamic memory for ACL storage.
4601
46022003-04-02 Robert Collins <rbtcollins@hotmail.com>
4603
58b12a06
MB
4604 * main.cc (NTSecurity::setDefaultDACL): Disable ~ 50% of remaining
4605 active code.
e46e15bf
RC
4606
46072003-04-02 Robert Collins <rbtcollins@hotmail.com>
4608
4609 * main.cc (NTSecurity::GroupInfo): Extract group query code.
4610 (NTSecurity::setDefaultDACL): Disable ~ 50% of code.
4611
46122003-04-02 Robert Collins <rbtcollins@hotmail.com>
4613
58b12a06
MB
4614 * main.cc (NTSecurity::setDefaultSecurity): Disable ~ 50% of security
4615 code.
e46e15bf
RC
4616
46172003-04-01 Robert Collins <rbtcollins@hotmail.com>
4618
58b12a06
MB
4619 * main.cc (NTSecurity::setDefaultSecurity): Remove double declaration of
4620 sz. User TokenGroupCollection to abstract token searching logic,
4621 eliminate isadmin and isuser temporary variables.
e46e15bf
RC
4622 (TokenGroupCollection): New class for querying token group information.
4623
46242003-04-01 Robert Collins <rbtcollins@hotmail.com>
4625
4626 * main.cc (NTSecurity::setDefaultSecurity): Extract esid initialisation.
4627 Move local variables to just before first use.
4628 SetTokenInformationFailures where being handled inconsistently.
4629 Remove assignments from if statements.
4630 (NTSecurity::esid): Rename to everyOneSID.
4631 (NTSecurity::initialiseEveryOneSID): new method.
4632 (NTSecurity::setDefaultDACL): Extract method for default DACL logic.
4633
46342003-04-01 Robert Collins <rbtcollins@hotmail.com>
4635
4636 * main.cc (SIDWrapper): Manage SID memory.
4637 (HANDLEWrapper): Likewise for HANDLES.
4638 (NTSecurity): Worker class for set_default_sec().
4639 (set_default_sec): Move body into NTSecurity::setDefaultSecurity().
58b12a06
MB
4640 (NTSecurity::setDefaultSecurity): Eliminate goto out: via memory
4641 managing objects.
e46e15bf 4642
da0b54f3
MB
46432003-04-01 Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>
4644
4645 * cygwin.ico: Added two new resolutions, 64x64 and 72x72.
4646
3baca7c9
RC
46472003-03-29 Robert Collins <rbtcollins@hotmail.com>
4648
4649 * GUIDELINES: New file documenting code guidelines.
4650
11e37aca
MB
46512003-03-26 Max Bowsher <maxb@ukf.net>
4652
4653 * .cvsignore: Add cfgaux.
4654
18a3405d
RC
46552003-03-26 Robert Collins <rbtcollins@hotmail.com>
4656
11e37aca
MB
4657 * package_version.cc (_defaultversion::accessible): Override and make
4658 always false.
4659 (_packageversion::accessible): Fix a couple of logic bugs resulting in
4660 incorrect trues.
18a3405d
RC
4661 * package_version.h (_packageversion::accessible): Make virtual.
4662
39ba3555
MB
46632003-03-25 Igor Pechtchanski <pechtcha@cs.nyu.edu>
4664
4665 * threebar.h (WM_APP_START_POSTINSTALL): New message.
4666 (WM_APP_POSTINSTALL_THREAD_COMPLETE): New message.
4667 * threebar.cc (ThreeBarProgressPage::OnMessageApp):
4668 Add handling for WM_APP_START_POSTINSTALL and
4669 WM_APP_POSTINSTALL_THREAD_COMPLETE.
4670 * install.cc (do_install_thread): Set next_dialog to
4671 IDD_S_POSTINSTALL.
4672 * desktop.cc (DesktopSetupPage::OnFinish): Move the
4673 do_postinstall call to ThreeBarProgressPage::OnMessageApp.
4674 * script.h (Script::fullName): New member function.
4675 (Script::run): New member function.
4676 (Script::ETCPostinstall): New static member constant.
4677 * script.cc (Script::fullName): Implement.
4678 (Script::run): Implement.
4679 (Script::ETCPostinstall): Define.
4680 (Script::isAScript): Use ETCPostinstall instead of a
4681 hardcoded string constant.
4682 (run): Enable "#if 0"'d code.
4683 * postinstall.cc (Progress): New extern variable.
4684 (RunFindVisitor::visitFile): Add script to vector
4685 instead of running.
4686 (RunFindVisitor::_scripts): New member variable.
4687 (RunScript): New helper class for use in for_each.
4688 (do_postinstall_thread): Rename do_postinstall to. Add
4689 Progress bar and text setting. Add package count.
4690 (do_postinstall_reflector): New static function.
4691 (do_postinstall): Rename to do_postinstall_thread.
4692 Create a thread instead.
4693
1069407c
MB
46942003-03-18 Igor Pechtchanski <pechtcha@cs.nyu.edu>
4695
4696 * script.cc (run): Add file_out parameter.
4697 Redirect output of subprocess to file, creating the
4698 path if necessary. Minimize the script window.
4699 (run_script): Add optional to_log boolean parameter.
4700 If to_log, redirect output to temporary file and then
4701 import it into LOG_BABBLE.
4702 (OutputLog): New helper class.
4703 (operator<<): New operation on OutputLog.
4704 * script.h (run_script): Add optional to_log parameter.
4705 * postinstall.cc (RunFindVisitor::visitFile): Instruct
4706 run_script() to log script output.
4707 (do_postinstall): Ditto.
4708
84fd41a9
RC
47092003-03-20 Robert Collins <rbtcollins@hotmail.com>
4710
ca2b7505 4711 * package_meta.cc (packagemeta::set_action): The logic
84fd41a9
RC
4712 test for the default action was reversed.
4713
864a5ec1
MB
47142003-03-18 Igor Pechtchanski <pechtcha@cs.nyu.edu>
4715
4716 * postinstall.cc (do_postinstall): Filter out '*.done'.
4717 * FilterVisitor.h: New header file. Declare the
4718 FilterVisitor, Filter, and ExcludeNameFilter classes.
4719 * FilterVisitor.cc: New file. Implement FilterVisitor,
4720 Filter, and ExcludeNameFilter.
4721 * String++.h (String::matches): New instance function.
4722 * String++.cc (String::matches): Implement.
4723 (strmatch) Import and adapt for <buf,len> strings.
4724 * Makefile.am (setup_SOURCES): Add FilterVisitor.cc and
4725 FilterVisitor.h to value.
4726
560ac5e2
MB
47272002-03-18 Max Bowsher <maxb@ukf.net>
4728
4729 * LogFile.cc (LogFile::exit): Use CRT exit() instead of ExitProcess().
4730 Use passed exit_code even if been_here.
4731 Remove incorrect _CYGWIN_ preprocessor conditional.
4732
ad646f43
RC
47332003-03-16 Robert Collins <rbtcollins@hotmail.com>
4734
e0312c44
RC
4735 * package_db.h (PackageDBConnectedIterator): Typedef
4736 for connected loop detection collection iterator.
ca2b7505
CF
4737 * package_db.cc (ConnectedLoopDetector): An
4738 implementation of R.E. Tarjans strongly connected
e0312c44
RC
4739 set visitor algorithm.
4740 * postinstall.cc (do_postinstall): Use the new iterator
4741 for visiting postinstall scripts.
ad646f43
RC
4742
47432003-03-16 Robert Collins <rbtcollins@hotmail.com>
4744
4745 * install.cc: Introduce Installer class.
4746 (init_dialog): Rename to Installer::initDialog.
4747 (progress): Rename to Installer::progress.
4748 (standard_dirs): Rename to Installer::StandardDirs.
4749 (uninstall_one): Rename to Installer::uninstallOne.
4750 (replace_one): Rename to Installer::replaceOne.
ca2b7505 4751 (log_ror_failure): Rename to
e0312c44 4752 Installer::replaceOnRebootFailed.
ca2b7505 4753 (log_ror_success): Rename to
e0312c44 4754 Installer::replaceOnRebootSucceeded.
ad646f43
RC
4755 (install_one_source): Rename to Installer::installOneSource.
4756 Note script files as they are installed.
4757 * package_version.cc (packageversion::addScript): Implement.
4758 (packageversion::scripts): Implement.
ca2b7505 4759 * package_version.h (packageversion::addScript): Record the
e0312c44 4760 presence of a script.
ad646f43 4761 * script.h (Script): New class to track scripts.
e0312c44
RC
4762 * postinstall.cc (do_postinstall): Iterate through the
4763 package listed scripts before searching for scripts.
ca2b7505 4764 * String++.cc (String::substr): Second argument needed to
e0312c44 4765 be signed.
ca2b7505 4766 * String++.h (String::substr): Second argument needed to
e0312c44 4767 be signed.
ad646f43 4768
c0a46d04
MB
47692003-03-16 Max Bowsher <maxb@ukf.net>
4770
4771 * .cvsignore: Create, to ignore configure, aclocal.m4, Makefile.in and
4772 autom4te.cache.
4773
3d7ae5a2
MB
47742003-03-16 Max Bowsher <maxb@ukf.net>
4775
4776 * UserSettings.cc (UserSettings::Instance): Remove premature return.
4777
92f9402a
RC
47782003-03-15 Robert Collins <rbtcollins@hotmail.com>
4779
4780 * script.cc (run): Rename variable b to createSucceeded.
4781
47822003-03-15 Igor Pechtchanski <pechtcha@cs.nyu.edu>
4783
4784 * script.cc (run): Close unneeded handles.
4785
b49f570f
RC
47862003-03-15 Robert Collins <rbtcollins@hotmail.com>
4787
4788 * configure: Remove.
4789 * aclocal.m4: Remove.
4790 * Makefile.in: Remove.
4791 * cfgaux: Remove.
4792 * cfgaux/compile: Remove.
4793 * cfgaux/config.guess: Remove.
4794 * cfgaux/config.sub: Remove.
4795 * cfgaux/depcomp: Remove.
4796 * cfgaux/install-sh: Remove.
4797 * cfgaux/ltmain.sh: Remove.
4798 * cfgaux/missing: Remove.
4799 * cfgaux/mkinstalldirs: Remove.
4800
b6001c0d
MB
48012003-03-14 Igor Pechtchanski <pechtcha@cs.nyu.edu>
4802
4803 * install.cc (replace_one): Clear Text3.
4804
46ccc05f
MB
48052003-03-14 Igor Pechtchanski <pechtcha@cs.nyu.edu>
4806
4807 * install.cc (install_one_source): Add logging for successful
4808 replace-on-reboot scheduling. Factor out duplicate code.
4809 Set rebootneeded on Win9x.
4810 (log_ror_failure): New static function.
4811 (log_ror_success): New static function.
4812
c27b09ba
RC
48132003-03-14 Robert Collins <rbtcollins@hotmail.com>
4814
ca2b7505 4815 * choose.cc (ChooserPage::OnNext): Fix iterator bug. Reported by
c27b09ba
RC
4816 Igor Pechtchanski <pechtcha@cs.nyu.edu>.
4817
a081d4ff
MB
48182003-03-13 Max Bowsher <maxb@ukf.net>
4819
4820 * Update included zlib to 1.1.4.
4821
f430003c
RC
48222003-03-13 Robert Collins <rbtcollins@hotmail.com>
4823
46ccc05f
MB
4824 * install.cc (do_install_thread): Use a query method rather than temp
4825 variable do_skip.
f430003c 4826
46ccc05f 48272003-03-09 Pavel Tsekov <ptsekov@gmx.net>
f430003c 4828
ca2b7505 4829 * install.cc (do_install_thread): Use IDS_SKIP_PACKAGE
f430003c
RC
4830 instead of IDS_CORRUPT_PACKAGE when asking the user to take
4831 action if the hash verification check fails for a source package.
4832 Do not increase the value of 'total_bytes' variable if the
4833 user chooses to skip over a package, which failed the hash
4834 verification.
4835
48c7d667
MB
48362003-03-10 Max Bowsher <maxb@ukf.net>
4837
4838 * Makefile.am: Add foreign to AUTOMAKE_OPTIONS.
4839
aaeee283
RC
48402003-03-10 Robert Collins <rbtcollins@hotmail.com>
4841
4842 * UserSettings.cc (UserSettings::init): Really initialize all members.
4843
ead15931
RC
48442003-03-10 Robert Collins <rbtcollins@hotmail.com>
4845
4846 * Exception.h: Add a logic error exception id.
4847 * Makefile.am: Add new sources.
4848 * UserSettings.cc: New file.
4849 * UserSettings.h: New file.
4850 * UserSetting.cc: New file.
4851 * UserSetting.h: New file.
4852 * site.h: Add a SiteSetting as example of a UserSetting.
46ccc05f
MB
4853 * site.cc (ChosenSites): Add a instance of SiteSetting to trigger
4854 registration.
ead15931 4855
c1754473
RC
48562003-03-10 Robert Collins <rbtcollins@hotmail.com>
4857
46ccc05f
MB
4858 * compress_bz.cc (compress_bz::read): Adjust incorrect assignment of
4859 lasterr.
c1754473
RC
4860 (compress_bz::error): Return lasterr which will indicate any error.
4861
52620058
RC
48622003-03-10 Robert Collins <rbtcollins@hotmail.com>
4863
4864 * choose.h (ChooserPage): Override OnActivate.
46ccc05f
MB
4865 * choose.cc (ChooserPage::OnActivate): Refresh the current view when
4866 activating the dialog.
52620058 4867
6e754226
RC
48682003-03-09 Robert Collins <rbtcollins@hotmail.com>
4869
46ccc05f
MB
4870 * package_version.cc (_defaultversion::pick(bool)): Override this and
4871 do nothing.
4872 (packageversion::pick(bool): Use a mutator function rather than direct
4873 member access.
4874 * package_version.h (_packageversion::pick(bool)): Move method from
4875 _packageversion.
6e754226 4876
970149e8
RC
48772003-02-16 Pavel Tsekov <ptsekov@gmx.net>
4878
ca2b7505 4879 * install.cc (install_one_source): Remove the MD5 verification
970149e8
RC
4880 code.
4881 Delay the creation of the package listing file.
ca2b7505 4882 (do_install_thread): Check the hashes for packages which need
970149e8
RC
4883 to be installed before the uninstall step. Allow the user to
4884 skip over packages, which fail the hash verification.
4885 (md5_one): Define new function.
4886 * res.rc (IDS_SKIP_PACKAGE): New string resource.
4887 * resource.h (IDS_SKIP_PACKAGE): New macro definition.
4888
f37b36a3
RC
48892003-02-16 Pavel Tsekov <ptsekov@gmx.net>
4890
4891 * Exception.h: Declare new constructor.
4892 (Exception::_message): Change the type from 'const char *' to
4893 'class String'.
4894 (Exception::~Exception): Implement destructor (make gcc shut up).
4895 * Exception.cc: Implement new constructor.
4896 (Exception::what): Use String::cstr_oneuse ().
4897 * download.cc (validateCachedPackage): Use the constructor, which
4898 takes String& as its second argument, when throwing objects
4899 of type Exception.
4900 (check_for_cached): Ditto.
4901 * install.cc (install_one_source): Ditto.
4902
eef9ea26
RC
49032003-02-01 Igor Pechtchanski <pechtcha@cs.nyu.edu>
4904
4905 * res.rc (IDS_INSTALL_INCOMPLETE): Change hard-coded
4906 log filename to %s.
4907 (IDS_MISSING_LOG): New string resource.
4908 * resource.h (IDS_MISSING_LOG): New resource.
4909 * LogFile.cc (LogFile::exit): Pass log filename for
4910 LOG_BABBLE to note().
4911 (LogFile::getFileName): New function.
4912 * LogFile.h (LogFile::getFileName): New function.
4913
514b100e
RC
49142003-02-01 Igor Pechtchanski <pechtcha@cs.nyu.edu>
4915
4916 * String++.cc: Don't include concat.h.
4917 * Makefile.am: Remove concat.cc and concat.h references.
4918 * concat.h: Remove.
4919 * concat.cc: Remove.
4920
56c60dcc
MB
49212003-03-09 Max Bowsher <maxb@ukf.net>
4922
4923 * bootstrap.sh: Add sanity check of current directory.
4924 Recurse into libgetopt++ if needed.
4925
4f4b9def
RC
49262003-03-09 Robert Collins <rbtcollins@hotmail.com>
4927
4928 * Update readme of bugs and wishes.
4929
ed6137e5
MB
49302003-03-05 Max Bowsher <maxb@ukf.net>
4931
4932 * netio.cc (save_dialog): Allocate an empty string if the password is
4933 null, so that an empty password is accepted elsewhere in setup.
4934 (check_if_enable_ok): An empty password is OK.
4935
e0aec95e
MB
49362003-03-05 Brian Keener <bkeener@thesoftwaresource.com>
4937
ed6137e5 4938 * PickView.cc (PickView::views): Add two new views for Skipped
e0aec95e
MB
4939 packages and Installed Packages not requiring update.
4940 (PickView::set_headers () ): Ditto.
4941 (PickView::clear_view (void) ): Ditto.
4942 (PickView::views::caption () ): Add two new captions for the new
4943 views added for Skipped and Installed Packages.
4944 (PickView::scroll () ): Modify Scroll Bar property to Disable
ed6137e5 4945 instead of disappearing when there is nothing to Scroll.
e0aec95e
MB
4946 * PickView.h: Add two new views for Skipped packages and Installed
4947 packages to public class view.
4948 * choose.cc (list_click () ): Modify Scroll Bar property to Disable
ed6137e5 4949 instead of disappearing when there is nothing to Scroll.
e0aec95e
MB
4950 (listview_proc () ): Ditto.
4951 (set_view_mode): Add two new views for Skipped Packages and Installed
4952 Packages not requiring update. Modify Scroll Bar property to Disable
4953 instead of disappearing when there is nothing to scroll.
4954 * res.rc (IDD_CHOOSE): Reposition Radio Buttons, View Selection
4955 Button and View Button Caption to make room for longer captions.
4956
c7fb2f36
MB
49572003-03-04 Max Bowsher <maxb@ukf.net>
4958
4959 * compress_gz.cc (compress_gz::construct):
4960 Fix broken checkin dated 2002-07-03.
4961
d5be1d23
MB
49622003-02-28 Max Bowsher <maxb@ukf.net>
4963
4964 * main.cc (set_default_sec): Add logging.
4965
adaa168a
MB
49662003-02-28 Pierre Humblet <pierre.humblet@ieee.org>
4967
4968 * main.cc (set_default_dacl): Replace with set_default_sec.
4969 (set_default_sec): Attempt to change the default group to
4970 Users or Administrators if it is None, in addition to setting
4971 Everyone in the default DACL.
4972 (main): Call set_default_sec instead of set_default_dacl.
4973
3a8d1127
MB
49742003-01-31 Max Bowsher <maxb@ukf.net>
4975
4976 * install.cc (install_one_source): Fix spacing in log message.
4977
c7230a28
MB
49782003-01-19 Max Bowsher <maxb@ukf.net>
4979
4980 * resource.h (IDC_CHOOSE_KEEP): Define.
4981 * res.rc (IDD_CHOOSE): Add radio button IDC_CHOOSE_KEEP.
4982 * choose.cc (create_listview): Add IDC_CHOOSE_KEEP to ta[].
4983 (ChooserPage::OnMessageCmd): Handle new IDC_CHOOSE_KEEP button.
4984
ac949c48
MB
49852003-01-15 Max Bowsher <maxb@ukf.net>
4986
4987 * mkdir.cc [_CYGWIN_]: Implement what was pseudocode.
4988 * io_stream.h [__CYGWIN__]: Don't typedef ssize_t.
4989 * proppage.h: Include "win32.h" instead of <windows.h>.
4990
4f618d88
MB
49912003-01-15 Max Bowsher <maxb@ukf.net>
4992
4993 * mount.cc [MAINTAINER_FEATURES]: Add --override-registry-name option.
4994
1606c4e9
MB
49952002-12-11 Abraham Backus <abraham@backus.com>
4996
4997 * nio-http.cc (NetIO_HTTP::NetIO_HTTP): Leave port out of Host header,
4998 unless non-default.
4999
c4e25cde
MB
50002002-12-11 Max Bowsher <maxb@ukf.net>
5001
5002 * package_meta.cc: Change 'endl' to 'endLog' as appropriate.
5003 * package_version.cc: Ditto.
5004
bfdf6ac2
MB
50052002-09-22 Max Bowsher <maxb@ukf.net>
5006
5007 * PickView.cc (pkg_headers): Rename column 'Category' to 'Categories'.
5008 * package_meta.h (packagemeta::getReadableCategoryList): Declare.
5009 * package_meta.cc (packagemeta::getReadableCategoryList): Implement.
5010 * PickPackageLine.cc (PickPackageLine::paint): Change to use
5011 getReadableCategoryList.
5012 Fix x2 argument to IntersectClipRect.
5013
63c82708
RC
50142002-11-25 Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>
5015
5016 * window.h (Window::GetWindowRect): New method declaration.
5017 (Window::GetClientRect): Ditto.
5018 (Window::MoveWindow): Ditto.
5019 (Window::ScreenToClient): Ditto.
5020 * window.cc (REFLECTION_INFO): Remove.
5021 (ReflectionInfo): Remove.
5022 (Window::FirstWindowProcReflector): Use the WM_NCCREATE message instead
5023 of the horrid REFLECTION_INFO hack to hook the Window instance to the
5024 HWND instance.
5025 (Window::WindowProcReflector): Use GetWindowLongPtr() now that it's
5026 available.
5027 (Window::Create): Change to use new WM_NCCREATE reflection procedure
5028 above.
5029 (Window::GetWindowRect): New method.
5030 (Window::GetClientRect): New method.
5031 (Window::MoveWindow): New method.
5032 (Window::CenterWindow): Use new methods, also specify "::" for some non-
5033 member functions with the same names.
5034 (Window::ScreenToClient): New method.
5035
58983805
RC
50362002-11-26 Robert Collins <rbtcollins@hotmail.com>
5037
5038 * AntiVirus.cc: Change the short option again! It's now 'A'.
5039 * desktop.cc (etc_profile): Remove.
5040 (make_etc_profile): Remove.
5041 (uexists): Remove.
5042 (make_passwd_group): Remove.
5043 (do_desktop_setup): Don't call removed functions.
5044
b2028692
RC
50452002-11-26 Robert Collins <rbtcollins@hotmail.com>
5046
5047 * nio-ftp.cc (NetIO_FTP::NetIO_FTP): Fix my botched application of
5048 Marcel's patch.
5049
2d8e4784
RC
50502002-07-08 Marcel Telka <marcel@telka.sk>
5051
b2028692 5052 * nio-ftp.cc (NetIO_FTP::NetIO_FTP): Fixed decoding of the FTP
2d8e4784
RC
5053 reply (code 227) to the PASV command.
5054
3a87705e
RC
50552002-11-26 Robert Collins <rbtcollins@hotmail.com>
5056
5057 * IniDBBuilderPackage.cc (IniDBBuilderPackage::~IniDBBuilderPackage):
5058 Sort the packages db once all the new packages have been added.
5059 * IniDBBuilderPackage.h (IniDBBuilderPackage::~IniDBBuilderPackage):
5060 Declare this.
5061
bd4e91a7
RC
50622002-11-26 Robert Collins <rbtcollins@hotmail.com>
5063
5064 * choose.cc (ChooserPage::OnNext): Remove extracted comment.
5065 * package_version.cc (processOneDependency): Return once selecting
5066 a package (bugfix to prevous rework).
5067 Log if the default trust fails the package specification.
5068
f416a2b6
RC
50692002-11-26 Robert Collins <rbtcollins@hotmail.com>
5070
5071 * package_meta.h (packagemeta::logAllVersions): Declare.
5072 (packagemeta::trustLabel): Ditto.
ca2b7505 5073 * choose.cc (ChooserPage::OnNext): Get each package to log all it's
f416a2b6
RC
5074 versions.
5075 * package_meta.cc (packagemeta::logAllVersions): Implement.
5076 (packagemeta::trustLabel): Ditto.
5077
14485ab2
RC
50782002-11-25 Robert Collins <rbtcollins@hotmail.com>
5079
5080 * AntiVirus.cc: Change 'd' to 'D' to fix command line conflict.
5081
f9e903a3
RC
50822002-11-25 Robert Collins <rbtcollins@hotmail.com>
5083
5084 * AntiVirus.cc: New file.
5085 * AntiVirus.h: Ditto.
5086 * LogFile.cc: Include AntiVirus.h for class definition.
5087 (LogFile::exit): Trigger AntiVirus::AtExit().
5088 * MakeFile.am(setup_SOURCES): Add AntiVirus files.
5089 * autoload.c: Declare Service Control Manager related API's.
5090 * main.cc: Include AntiVirus.h for class definition.
5091 (main): Add the AntiVirus page in.
5092 * res.rc: Define IDD_VIRUS.
5093 * resource.h: Define IDD_VIRUS related control ID's.
5094 * splash.h: Override OnNext.
5095 * splash.cc: Only show AntiVirus page when one has been detected.
5096 * source.cc: Ditto.
5097
05c5b8a6
RC
50982002-11-25 Robert Collins <rbtcollins@hotmail.com>
5099
5100 * package_version.cc (DependencyProcessor): Create convenience class.
5101 (select): Extract version selection method.
5102 (processOneDependency): Check for a satisfactory trusted version
5103 first.
5104
51052002-11-10 Robert Collins <rbtcollins@hotmail.com>
15004270
RC
5106
5107 * main.cc (main): Use the factory for LogFile.
5108 * String++.cc: Update to use sstream.
58b12a06 5109 (String::String): Use a ostringstream for libC++ 3.2.
15004270
RC
5110 * LogFile.h (LogFile): Make createLogFile static.
5111
05c5b8a6 51122002-11-10 Robert Collins <rbtcollins@hotmail.com>
51629951
RC
5113
5114 * main.cc (main): Oops, pass LogSingleton a reference, not a pointer.
5115
666bf37d
RC
51162002-11-04 Max Bowsher <maxb@ukf.net>
5117
5118 * Exception.h (Exception::what): Add throw() specification,
5119 to agree with libstdc++-v3.
5120 * Exception.cc (Exception::what): Ditto.
5121 * IniDBBuilderPackage.h: Add 'std::' where needed.
5122 * PickCategoryLine.h: Ditto.
5123 * category.h: Ditto.
5124 * package_db.h: Ditto.
5125 * package_meta.h: Ditto.
5126 * package_source.h: Ditto.
5127 * package_version.h: Ditto.
5128 * site.h: Ditto.
5129 * win32.h: Define NOMINMAX before including <windows.h>.
5130 * package_meta.cc: Add 'using namespace std;'.
5131 (packagemeta::set_requirements): Remove default parameter values
5132 from definition (gcc3 likes them only in declaration).
5133 * package_version.cc: Add 'using namespace std;'.
5134 (packageversion::set_requirements): Remove default parameter
5135 values from definition (gcc3 likes them only in declaration).
5136
37decc22
RC
51372002-11-10 Robert Collins <rbtcollins@hotmail.com>
5138
5139 * compress_bz.cc: Don't include bzlib.h directly, the compress_bz.h
5140 header includes it.
5141
51422002-11-04 Max Bowsher <maxb@ukf.net>
5143
ca2b7505
CF
5144 * compress_bz.h: #undef small before including bzlib.h - if we are
5145 going to hide the fact that we are _WIN32 from bzlib, then we need
37decc22
RC
5146 to #undef small for it as well (bad windows.h clash).
5147
a55c8f45
RC
51482002-11-10 Robert Collins <rbtcollins@hotmail.com>
5149
5150 * localdir.cc: Update the extern LogFile to be a pointer.
5151 (save_local_dir): Change . to -> for the above.
5152 * main.cc (theFile): Change from an instance to a pointer.
5153 (main): Change . to -> for the above.
5154
c83c52d8
RC
51552002-11-10 Robert Collins <rbtcollins@hotmail.com>
5156
5157 * LogFile.cc: use 'std::' where needed throughout.
5158 (LogFile::createLogFile): Implement a factory for LogFile.
5159 (LogFile::LogFile): Update for use with the factory, and to
5160 handle the latest g++ library changes.
5161 (LogFile::operator()): Ditto.
5162 (LogFile::endEntry()): Ditto.
5163 * LogFile.h: Ditto.
5164 * LogSingleton.cc: Ditto.
5165 * LogSingleton.h: Ditto.
5166
318af134
RC
51672002-11-04 Max Bowsher <maxb@ukf.net>
5168
5169 * String++.h: Add 'std::' where needed.
5170
6625e635
RC
51712002-11-04 Max Bowsher <maxb@ukf.net>
5172
5173 * IniDBBuilderPackage.cc: Add 'using namespace std;'.
5174 * IniParseFindVisitor.cc: Ditto.
5175 * LogFile.cc: Ditto.
5176 * LogSingleton.cc: Ditto.
5177 * PickView.cc: Ditto.
5178 * String++.cc: Ditto.
5179 * choose.cc: Ditto.
5180 * download.cc: Ditto.
5181 * find.cc: Ditto.
5182 * install.cc: Ditto.
5183 * io_stream.cc: Ditto.
5184 * io_stream_file.cc: Ditto.
5185 * package_db.cc: Ditto.
5186 * root.cc: Ditto.
5187 * site.cc: Ditto.
5188
955bf437
RC
51892002-11-04 Max Bowsher <maxb@ukf.net>
5190
5191 * LogSingleton.h: Add 'std::' where needed.
5192
b34fb59f
RC
51932002-11-04 Max Bowsher <maxb@ukf.net>
5194
5195 * archive_tar_file.cc: Include <algorithm>.
5196 Change min(a,b) to std::min(a,b)
5197 * compress_bz.cc: Ditto.
5198 * compress_gz.cc: Ditto.
5199
326fbcb8
RC
52002002-11-04 Max Bowsher <maxb@ukf.net>
5201
5202 * res.rc: Change a #-comment (invalid) to a //-comment.
5203
4361306f
RC
52042002-11-04 Max Bowsher <maxb@ukf.net>
5205
5206 * Makefile.am (%.o: %.rc): Make windres use $(CC) not hardcoded gcc.
58b12a06
MB
5207 (inilint_LDADD): Remove -lstd++.
5208 (setup_LDADD): Ditto.
4361306f 5209
05d7b7f2
RC
52102002-09-22 Max Bowsher <maxb@ukf.net>
5211
5212 * IniDBBuilderPackage.cc: Update DEBUG code to current class
5213 layout.
5214
f2ff9838
RC
52152002-09-21 Robert Collins <rbtcollins@hotmail.com>
5216
5217 * choose.h: Add OnUnattended method.
5218 * desktop.cc (DesktopSetupPage::OnInit): Allow fine grained
5219 control via command line options.
5220 (DesktopSetupPage::OnUnattended): Implement.
5221 (DesktopSetupPage::OnMessageApp): Implement.
5222 * desktop.h (DesktopSetupPage::OnUnattended): declare.
5223 (DesktopSetupPage::OnMessageApp): Ditto.
5224 * download.cc (do_download_thread): Support unattended mode.
5225 * install.cc (do_install_thread): Ditto.
5226 * localdir.h: Ditto.
5227 * main.cc (main): Ditto.
5228 * net.cc (NetPage::OnUnattended): Ditto.
5229 * net.h (NetPage::OnUnattended): Declare.
5230 * proppage.cc (PropertyPage::DialogProc): Support unattended mode.
5231 * proppage.h (PropertyPage::OnUnattended): Declare.
5232 * root.cc (RootPage::OnInit): Support unattended mode.
5233 (RootPage::OnUnattended): Implement.
5234 * root.h (RootPage::OnUnattended): Declare.
5235 * site.cc (register_saved_site): Extract Method from get_saved_sites.
5236 (get_saved_sites): Remove common code for adding a site.
5237 (SitePage::OnInit): Support unattended mode.
5238 (SitePage::OnUnattended): Implement.
5239 * site.h (SitePage::OnUnattended): Declare.
5240 * source.cc (SourcePage::OnActivate): Support unattended mode.
5241 (SourcePage::OnUnattended): Implement.
5242 * source.h (SourcePage::OnUnattended): Declare.
5243 * splash.h (SplashPage::OnUnattended): Declare.
5244 * state.cc (unattended_mode): Declare.
5245 * state.h (unattended_mode): Declare.
5246 * threebar.h (ThreeBarProgressPage::OnUnattended): New method.
5247
707f3d66
RC
52482002-09-21 Robert Collins <rbtcollins@hotmail.com>
5249
5250 * res.rc: Commit Harry Johnston's dialog caption patch. From July.
5251
ec13f13c
RC
52522002-07-15 Robert Collins <rbtcollins@hotmail.com>
5253
5254 * package_version.cc (packageversion::sources): Implement this.
5255 * download.cc (do_download_thread): Support multiple files per package.
5256
e5662e0a
RC
52572002-07-15 Robert Collins <rbtcollins@hotmail.com>
5258
5259 * package_version.h (packageversion::sources): Support multiple files in
5260 a single package version.
5261 * package_version.cc (_packageversion::accessible): Ditto.
5262 (packageversion::source): Ditto.
5263
60daae94
RC
52642002-07-15 Robert Collins <rbtcollins@hotmail.com>
5265
5266 * iniparse.y: Implement support for multiple source files for a source
5267 package.
5268 * IniDBBuilder.h (IniDBBuilder::buildSourceFile): Ditto.
5269 * IniDBBuilderPackage.h (IniDBBuilder::buildSourceFile): Ditto.
5270 * IniDBBuilder.cc (IniDBBuilder::buildSourceFile): Ditto.
ca2b7505 5271 * IniDBBuilderPackage.cc (IniDBBuilder::buildSourceFile): Implement a
60daae94
RC
5272 stub as preparation.
5273
4f591f9d
RC
52742002-07-13 Robert Collins <rbtcollins@hotmail.com>
5275
ca2b7505 5276 * PickPackageLine.cc (PickPackageLine::click): Set requirements for
4f591f9d
RC
5277 packages under all circumstances - slightly higher overheader, simpler
5278 code.
ca2b7505 5279 * download.cc (do_download_thread): Correctly download source
4f591f9d
RC
5280 packages.
5281 * package_meta.cc (checkForInstalled): Remove.
5282 (checkForUpgradeable): Ditto.
5283 (checkForSatisfiable): Ditto.
5284 (processOneDependency): Ditto.
5285 (packagemeta::set_requirements): Move guts to packageversion.
5286 * package_version.cc (checkForInstalled): Copied from package_meta.cc.
5287 (checkForUpgradeable): Ditto.
5288 (checkForSatisfiable): Ditto.
5289 (processOneDependency): Ditto.
5290 (packageversion::set_requirements): Ditto.
5291 * package_version.h (packageversion::set_requirements): Declare.
5292
b1ff53ed
RC
52932002-07-13 Robert Collins <rbtcollins@hotmail.com>
5294
5295 * IniDBBuilder.cc (IniDBBuilder::buildBeginBuildDepends): Implement.
5296 (IniDBBuilder::buildBeginBinary): Implement.
5297 * IniDBBuilder.h (IniDBBuilder::buildBeginBuildDepends): Declare.
5298 (IniDBBuilder::buildBeginBinary): Ditto.
5299 * IniDBBuilderPackage.cc (IniDBBuilderPackage::buildBeginBuildDepends):
5300 Implement.
5301 (IniDBBuilderPackage::buildBeginBinary): Ditto.
5302 * IniDBBuilderPackage.h (IniDBBuilderPackage::buildBeginBuildDepends):
5303 Declare.
5304 (IniDBBuilderPackage::buildBeginBinary): Ditto.
5305 * inilex.l: Recognise Build-Depends-Indep, [,], >, < and remove
5306 T_UNKNOWN.
5307 * iniparse.y: Full support for parsing a debian Sources file in-line in
5308 setup.ini.
5309 * package_version.cc (packageversion::binaries): Implement.
5310 * package_version.h (packageversion::binaries): Declare list of what
5311 packages are created from a given source package.
5312 (_packageversion::binaries): Ditto.
5313
233a3e17
RC
53142002-07-10 Robert Collins <rbtcollins@hotmail.com>
5315
5316 * iniparse.y: Add basis for support for parsing a debian Sources file.
5317 * inilex.l: Ditto.
5318
cfae3b8d
RC
53192002-07-09 Robert Collins <rbtcollins@hotmail.com>
5320
5321 Change custom container code for packagedb::packages to STL containers
5322 throughout.
5323 * IniDBBuilderPackage.cc: Ditto.
5324 * PickView.cc: Ditto.
5325 * choose.cc: Ditto.
5326 * desktop.cc: Ditto.
5327 * download.cc: Ditto.
5328 * install.cc: Ditto.
5329 * package_db.cc: Ditto.
5330 * package_db.h: Ditto.
5331 * Makefile.am: Remove list.h references.
5332 * list.h: Remove.
5333
09130e58
RC
53342002-07-08 Max Bowsher <maxb@ukf.net>
5335
5336 * PickView.cc (PickView::PickView): Set font of package list header to
5337 the same as used in the rest of the package list.
5338
a75ed5ce
RC
53392002-07-08 Robert Collins <rbtcollins@hotmail.com>
5340
5341 * install.cc (NoReplaceOnReboot): New command line option to prevent
5342 replacing in use files.
5343 (install_one_source): Check the option and use it.
5344 * README: Update TODO lists.
5345
0cf68afd
RC
53462002-07-08 Robert Collins <rbtcollins@hotmail.com>
5347
ca2b7505 5348 * PickCategoryLine.cc: Change bucket to use STL container syntax
0cf68afd
RC
5349 throughout.
5350 (PickCategoryLine::paint): Use new Category type syntax.
ca2b7505 5351 * PickCategoryLine.h: Use STL vectors rather than custom containers
0cf68afd
RC
5352 throughout.
5353 * IniDBBuilderPackage.cc (IniDBBuilderPackage::buildPackageCategory):
5354 Use new add_category syntax.
5355 * PickView.cc (PickView::insert_pkg): Use new Category type syntax.
5356 (PickView::insert_category): Ditto.
5357 (PickView::init_headers): Ditto.
5358 * category.cc: Trim obsolete code.
ca2b7505 5359 * category.h: Replace interconnecting class with a typedef to
0cf68afd
RC
5360 facilitate leveraging STL maps.
5361 * choose.cc (fill_missing_category): Use updated pkg.add_category
5362 syntax.
5363 (default_trust): Use new Category type syntax.
5364 (set_view_mode): Ditto.
5365 (create_listview): Ditto.
5366 * package_db.cc (categories): Ditto.
5367 * package_db.h: Update headers list to include needed headers.
5368 (packagedb::categories): Replace custom list with STL map.
5369 * package_meta.cc: Use new Category type syntax throughout.
5370 (packagemeta::add_category): Implement new syntax.
5371 * package_meta.h: Remove commented out source.
5372 (packagemeta::add_category): Update syntax to decouple interface from
5373 packagedb.
5374
89374d4a
CF
53752002-07-06 Christopher Faylor <cgf@redhat.com>
5376
5377 * site.cc (do_download_site_info_thread): Correct spelling error.
5378
405d7186
RC
53792002-07-06 Robert Collins <rbtcollins@hotmail.com>
5380
5381 * PickCategoryLine.h: Include required header list.h.
5382 * PickPackageLine.cc (PickPackageLine::paint): Adjust to use STL
5383 containers for listing of packages per category and vice verca.
5384 * PickView.cc (PickView::insert_pkg): Ditto.
5385 (PickView::insert_category): Ditto.
5386 * String++.h (String::caseless): STL helper to allow trivial containers
5387 of Strings with case insensitive comparisons.
5388 * category.h: Adjust to use STL containers for listing of packages per
5389 category and vice verca.
5390 * choose.cc (fill_missing_category): Ditto.
5391 (default_trust): Ditto.
5392 (ChooserPage::OnNext): Ditto.
5393 * package_meta.cc (CategoryPackage::~CategoryPackage): Remove.
5394 (packagemeta::packagemeta): Adjust for new category list name.
5395 (packagemeta::~packagemeta): Adjust to use STL containers for listing
5396 of packages per category and vice verca.
5397 (packagemeta::set_action): Ditto.
5398 * package_meta.h (CategoryPackage): Remove.
5399 (packagemeta): Adjust to use STL containers for listing of packages per
5400 category and vice verca.
5401
080bec6e
RC
54022002-07-05 Robert Collins <rbtcollins@hotmail.com>
5403
5404 * io_stream.cc: Use STL containers rather than custom ones.
5405 (io_stream::registerProvider): Ditto.
5406 (findProvider): Ditto.
5407
3f34f364
RC
54082002-07-05 Robert Collins <rbtcollins@hotmail.com>
5409
5410 * IniDBBuilderPackage.cc (IniDBBuilderPackage::buildPackageSource):
5411 Use STL collections for download site collections.
5412 (IniDBBuilderPackage::add_correct_version): Ditto.
5413 (IniDBBuilderPackage::process_src): Ditto.
5414 * PickPackageLine.cc (PickPackageLine::click): Use the packageversion
5415 accessible() call to abstract package availability.
ca2b7505 5416 * choose.cc (scanAVersion): Use STL collections for download site
3f34f364
RC
5417 collections.
5418 * download.cc (check_for_cached): Ditto.
5419 (download_one): Ditto.
5420 * package_meta.cc (packagemeta::set_action): Use the packageversion
5421 accessible() call to abstract package availability.
5422 * package_source.h: Use STL containers rather than custom containers.
5423 (site): Create a == operator to allow STL container use.
5424 (packagesource::sites): Use STL containers rather than custom
5425 containers.
5426 * package_version.cc (_packageversion::accessible): Use STL containers
5427 for download site containers.
5428
e2cdf72c
RC
54292002-07-05 Robert Collins <rbtcollins@hotmail.com>
5430
5431 * LogFile.cc: Use STL containers rather than custom containers.
5432 (filedef): Create == and < operators for STL use.
5433 (files): Convert to an STL set.
5434 (LogFile::setFile): Use STL operations on files.
5435 (LogFile::exit): Ditto.
5436
3bac26a1
RC
54372002-07-05 Robert Collins <rbtcollins@hotmail.com>
5438
5439 * ini.cc (do_remote_ini): Use STL collection for site collection.
5440 * site.cc: Include site.h first to ensure it's parsable standalone.
5441 Use STL algorithms.
5442 (site_list): Convert to an STL container.
5443 (all_site_list): Ditto.
5444 (site_list_type::site_list_type): Implement copy constructor.
5445 (site_list_type::operator=): Implement assignment operator.
5446 (site_list_type::operator ==): Implement.
5447 (site_list_type::operator <): Ditto.
5448 (save_dialog): Use STL collection calls for site collection.
5449 (save_site_url): Ditto.
5450 (get_site_list): Ditto.
5451 (get_saved_sites): Ditto.
5452 (do_download_site_info_thread): Ditto.
5453 (SitePage::OnNext): Ditto.
5454 (SitePage::PopulateListBox): Ditto.
5455 (SitePage::OnMessageCmd): Ditto.
5456 * site.h: Use STL vectors instead of custom code.
5457 (site_list_type::site_list_type): Declare.
5458 (site_list_type::operator=): Ditto.
5459 (site_list_type::operator ==): Ditto.
5460 (site_list_type::operator !=): Ditto.
5461 (site_list_type::operator <): Ditto.
5462 (site_list_type::operator <=): Ditto.
5463 (site_list_type::operator >): Ditto.
5464 (site_list_type::operator >=): Ditto.
5465 (site_list): Convert to an STL container.
5466 (all_site_list): Ditto.
5467
528a8edb
RC
54682002-07-05 Robert Collins <rbtcollins@hotmail.com>
5469
5470 * choose.cc (default_trust): Check package accessibility before
5471 triggering an install. (Suggested by Pavel).
5472
54732002-07-03 Pavel Tsekov <ptsekov@gmx.net>
5474
5475 * compress_gz.cc (compress_gz::construct): Always initialize key members
5476 to ensure the destructor does the right thing.
5477
4e868a01
RC
54782002-07-03 Pavel Tsekov <ptsekov@gmx.net>
5479
5480 * filemanip.cc (parse_filename): Do not try to parse empty
5481 strings (filenames).
5482 * package_db.cc (packagedb::packagedb): For each line check if sscanf()
5483 extracted good package name and filename.
5484
7f2b9277
RC
54852002-07-03 Robert Collins <rbtcollins@hotmail.com>
5486
5487 * package_meta.cc (packagemeta::set_requirements): Automatically select
ca2b7505 5488 version of dependent packages that satisfies the requirements.
7f2b9277
RC
5489 Use processOneDependency to trigger the install of those packages.
5490 (checkForInstalled): Check that the package remains installed.
5491 (processOneDependency): Helper function for dependent packages.
5492 * IniDBBuilderPackage.cc (IniDBBuilderPackage::buildPackage): Add more
5493 debug information.
5494 Clear out all current state on new packages.
ca2b7505 5495 (IniDBBuilderPackage::add_correct_version): Copy the dependency list
7f2b9277
RC
5496 across.
5497
84c4f5d1
RC
54982002-07-02 Robert Collins <rbtcollins@hotmail.com>
5499
5500 * Makefile.am (inilint_SOURCES): Add PackageSpecification sources.
5501 nb: inilint is still incomplete, as the packageversion code is not
5502 ready for database-less linking.
5503 * site.cc (get_site_list): When the same site is reentered by the user
5504 replace the old one. (Suggested by John Marshall).
5505
64cd7f94
RC
55062002-07-02 Robert Collins <rbtcollins@hotmail.com>
5507
5508 * IniDBBuilderPackage.cc (IniDBBuilderPackage::buildPackageSource):
5509 Clear out package selections when generating implicit source packages.
5510 * PackageSpecification.cc (PackageSpecification::satisfies): Implement.
5511 (PackageSpecification::_operators::satisfies): Implement.
5512 * PackageSpecification.h (PackageSpecification::_operators::satisfies):
5513 Worker function for testing versions.
5514
3c196821
RC
55152002-07-01 Robert Collins <rbtcollins@hotmail.com>
5516
5517 * IniDBBuilder.cc (IniDBBuilder::buildPackageRequirement): Remove.
5518 * IniDBBuilder.h (IniDBBuilder::buildPackageRequirement): Ditto.
5519 * IniDBBuilderPackage.cc: Use the STL algorithms.
5520 Change cpv to cbpv throughout. Adjust -> to ., and use the new accessor
5521 functions for the same variable throughout.
5522 (IniDBBuilderPackage::IniDBBuilderPackage): Initialise new members.
5523 (IniDBBuilderPackage::buildPackage): Use new cygpackage syntax,
5524 and set an empty source package.
5525 (IniDBBuilderPackage::buildPackageInstall): Use the new source member
5526 to record an install package.
5527 (IniDBBuilderPackage::buildPackageSource): Move source package logic
5528 out from process_src, as it now occurs at separate times.
5529 (IniDBBuilderPackage::buildPackageRequirement): Remove.
ca2b7505 5530 (IniDBBuilderPackage::buildSourceName): Use renamed package
3c196821
RC
5531 specifiation accessor for clarity.
5532 (IniDBBuilderPackage::buildSourceNameVersion): Ditto.
5533 (IniDBBuilderPackage::add_correct_version): Use STL iterators rather
5534 than custom code.
5535 Remove source package references.
5536 (IniDBBuilderPackage::process_src): Remove source package code as it's
5537 now handled separately.
5538 Set Path information before merging versions, to prevent dangling
5539 pointers.
5540 * IniDBBuilderPackage.h (IniDBBuilderPackage::buildPackageRequirement):
5541 Remove.
5542 (IniDBBuilderPackage::cpv): Remove.
5543 (IniDBBuilderPackage::cbpv): New generic binary working variable.
5544 (IniDBBuilderPackage::cspv): Ditto, but for source packages.
5545 (IniDBBuilderPackage::csp): Source package variable for disjoint
5546 source packages.
5547 * Makefile.am (AM_CFLAGS): Remove -Winline to allow stl set code
5548 to compile. If it compiles cleanly in gcc 3.1, then reinstate.
5549 * PickPackageLine.cc: Adjust packageversion accessors to the new
5550 reference calls. (i.e. -> to .) throughout.
5551 (PickPackageLine::paint): Use accessible() for clarity.
5552 Use new split out source package logic.
5553 (PickPackageLine::click): Ditto.
5554 * PickView.cc (PickView::init_headers): Adjust packageversion accessors
5555 to the new reference calls. (i.e. -> to .) throughout.
5556 Use new split out source package logic.
5557 * choose.cc: Don't depend on a specific package type.
ca2b7505 5558 Adjust packageversion accessors to the new reference calls. (i.e. -> to
3c196821
RC
5559 .) throughout.
5560 (set_existence): Use accessible () for clarity.
5561 (default_trust): Simplify a little.
ca2b7505 5562 (scanAVersion): Factored out code from scan_downloaded_files for
3c196821
RC
5563 clarity.
5564 (scan_downloaded_files): Factor out inner loop for clarity.
5565 (ChooserPage::OnNext): Don't dump the dependency list,
ca2b7505 5566 it's parsing is robust now!.
3c196821
RC
5567 * cygpackage.cc (createInstance): Use a factory method to create new
5568 objects.
5569 (cygpackage::cygpackage): Make this private for use by the factory.
5570 (cygpackage::setCanonicalVersion): Renamed from set_canonical_version.
5571 Remove key usage as it's obsolete.
5572 * cygpackage.h (cygpackage): Inherit from _packageversion, not
5573 packageversion.
5574 (cygpackage::createInstance): New factory.
5575 (cygpackage::cygpackage): Make private.
5576 * desktop.cc (make_passwd_group): Use new packageversion reference.
5577 * download.cc (do_download_thread): Use changeRequested() for clarity.
5578 Use new packageversion reference calls.
5579 * iniparse.y (REQUIRES): Reuse the packageList code and dump the one-off
5580 requires code.
5581 * install.cc: Adjust -> to ., and use the new accessor functions for
5582 packageversion throughout.
5583 * package_db.cc: Adjust -> to ., and use the new accessor functions for
5584 packageversion throughout.
5585 (packagedb::packagedb): Use the new cygpackage factory.
5586 (packagedb::flush): Leverage String to remove buffer overflow chance in
5587 sprintf.
5588 (packagedb::findBinary): Find a binary meta package that has a version
5589 matching a given specification.
5590 (packagedb::findSource): Ditto, but for source.
5591 * package_db.h (packagedb::findBinary): Declare.
5592 (packagedb::findSource): Ditto.
5593 * package_meta.cc: Adjust packageversion accessors to the new
5594 reference calls. (i.e. -> to .) throughout.
5595 Include the package_meta header first to ensure it parses standalone.
5596 Use the STL algorithms.
5597 (packagemeta::packagemeta): Create a copy constructor to allowing
5598 cloning binary package metadata to source package metadata.
ca2b7505 5599 (packagemeta::~packagemeta): Use the STL coleltion code rather than
3c196821
RC
5600 custom collection code.
5601 (packagemeta::add_version): Ditto.
5602 (packagemeta::set_installed): Ditto.
5603 (packagemeta::SDesc): Ditto.
5604 (hasSDesc): Helper function for find_if.
5605 (checkForInstalled): Ditto.
5606 (checkForUpgradeable): Ditto.
5607 (checkForSatisfiable): Ditto.
5608 (packagemeta::action_caption): Update for split out source packages.
5609 (packagemeta::set_action): Ditto.
5610 (packagemeta::set_requirements): Support multi-valued dependency
5611 lists - a|b & c|d - with versioned package specifications.
5612 (packagemeta::accessible): Helper member to improve abstraction.
5613 (packagemeta::sourceAccessible): Ditto.
5614 * package_meta.h: Adjust packageversion accessors to the new
5615 reference calls. (i.e. "->" to "." and"*" to "" ) throughout.
58b12a06 5616 (packagemeta::packagemeta): Declare copy constructor.
3c196821
RC
5617 Remove self initialising members.
5618 (packagemeta::set_action): Update parameters for new packageversion.
5619 (packagemeta::trustp): Ditto.
5620 (packagemeta::versions): Becomes an STL set.
5621 * package_source.h (packagesource::Cached): Const correctness change.
5622 * package_version.cc: Rewrite the packageversion interface to remove
5623 the cygpackage nonvirtual members, and provide a copy by value,
5624 pointer semantics reference counting wrapper class to ease use and
5625 comparison of packageversions.
5626 Change existing packageversion class to _packageversion throughout.
5627 (_defaultversion): A trivial concrete class to prevent specialcasing
5628 the default constructor for packageversion;
5629 (packageversion::packageversion): Implement.
5630 (packageversion::~packageversion): Ditto.
5631 (packageversion::operator=): Ditto.
5632 (packageversion::operator !): Ditto.
5633 (packageversion::operator bool): Ditto.
5634 (packageversion::operator ==): Ditto.
5635 (packageversion::operator !=): Ditto.
5636 (packageversion::operator <): Ditto.
5637 (packageversion::Name): Ditto.
5638 (packageversion::Canonical_version): Ditto.
5639 (packageversion::setCanonicalVersion): Ditto.
5640 (packageversion::getfirstfile): Ditto.
5641 (packageversion::getnextfile): Ditto.
5642 (packageversion::SDesc): Ditto.
5643 (packageversion::set_sdesc): Ditto.
5644 (packageversion::LDesc): Ditto.
5645 (packageversion::set_ldesc): Ditto.
5646 (packageversion::sourcePackage): Ditto.
5647 (packageversion::sourcePackageSpecification): Ditto.
5648 (packageversion::setSourcePackageSpecification): Ditto.
5649 (packageversion::depends): Ditto.
5650 (packageversion::predepends): Ditto.
5651 (packageversion::recommends): Ditto.
5652 (packageversion::suggests): Ditto.
5653 (packageversion::replaces): Ditto.
5654 (packageversion::conflicts): Ditto.
5655 (packageversion::provides): Ditto.
5656 (packageversion::picked): Ditto.
5657 (packageversion::pick): Ditto.
5658 (packageversion::changeRequested): Ditto.
5659 (packageversion::uninstall): Ditto.
5660 (packageversion::source): Ditto.
5661 (packageversion::accessible): Ditto.
5662 (_packageversion::sourcePackage): Ditto.
5663 (_packageversion::accessible): Ditto.
5664 (_packageversion::changeRequested): Ditto.
5665 * package_version.h: Rewrite the packageversion interface to remove
5666 the cygpackage nonvirtual members, and provide a copy by value,
5667 pointer semantics reference counting wrapper class to ease use and
5668 comparison of packageversions.
5669 Change existing packageversion class to _packageversion throughout.
5670 (Dependency): Remove.
5671 (packageversion): New wrapper class.
5672 (_packageversion): Renamed from packageversion.
5673 (_packageversion::setCanonicalVersion): New method.
5674 (_packageversion::sourcePackage): Ditto.
5675 (_packageversion::sourcePackageSpecification): Ditto.
5676 (_packageversion::setSourcePackageSpecification): Ditto.
5677 (_packageversion::changeRequested): Ditto.
5678 (_packageversion::bin): Rename to source.
5679 (_packageversion::src): Remove.
5680 (_packageversion::accessible): New method.
5681 (_packageversion::references): Allow reference counting.
ca2b7505 5682 (_packageversion::sourceVersion): Cached the best-match source
3c196821
RC
5683 package version.
5684
387cb501
RC
56852002-06-27 Robert Collins <rbtcollins@hotmail.com>
5686
5687 * compress_bz.h (compress_bz::position): Track how much has been read.
5688 * compress_bz.cc (compress_bz::compress_bz): And initialise it.
5689 (compress_bz::read): Track amount read by the client.
5690 (compress_bz::tell): And report it when asked.
5691
7d702af3
RC
56922002-06-27 Robert Collins <rbtcollins@hotmail.com>
5693
5694 * Makefile.am (snapshot): Automate snapshot creation some more.
5695
08cd08c3
RC
56962002-06-27 Robert Collins <rbtcollins@hotmail.com>
5697
5698 * msg.cc (msg): Use vsnprintf to avoid buffer overflows.
5699 (mbox): Ditto.
5700 * ini.cc (fprintf): Ditto.
5701 * log.cc (log): Ditto.
5702 * package_db.cc (packagedb::sourcePackages): Split out source packages
5703 from binary packages.
5704 * package_db.h: Ditto.
5705
aa1e3b4d
RC
57062002-06-27 Robert Collins <rbtcollins@hotmail.com>
5707
5708 * PackageSpecification.h: New file. Abstracts the ability to refer
5709 to another package, by name, or name and version.
5710 * PackageSpecification.cc: Ditto.
5711 * IniDBBuilder.cc (IniDBBuilder::buildPackageInstall): Simplify.
5712 (IniDBBuilder::buildPackageSource): Ditto.
5713 (IniDBBuilder::buildBeginDepends): New method for versioned
5714 dependencies.
5715 (IniDBBuilder::buildBeginPreDepends): Likewise, for dependencies to be
5716 satisfied before pre-install.
5717 (IniDBBuilder::buildPriority): New method, for getting the package
5718 Priority.
5719 (IniDBBuilder::buildInstalledSize): How much disk space does it need?
5720 (IniDBBuilder::buildMaintainer): Who maintains the package?
5721 (IniDBBuilder::buildArchitecture): What platform is it for?
5722 (IniDBBuilder::buildInstallSize): How big is the binary download?
5723 (IniDBBuilder::buildInstallMD5): Whats the MD5 on the binary?
5724 (IniDBBuilder::buildSourceMD5): Whats the MD5 on the source package?
5725 (IniDBBuilder::buildBeginRecommends): What other packages are
5726 recommended with this one?
5727 (IniDBBuilder::buildBeginSuggests): And suggested?
5728 (IniDBBuilder::buildBeginReplaces): What packages does this replace?
5729 (IniDBBuilder::buildBeginConflicts): And collide with?
5730 (IniDBBuilder::buildBeginProvides): What virtual packages (or obsolete
5731 package names) does this provide?
5732 (IniDBBuilder::buildDescription): Grab a multi line description one
5733 line at a time.
5734 (IniDBBuilder::buildSourceName): What source package should be used to
5735 install the source for this binary package?
5736 (IniDBBuilder::buildSourceNameVersion): Is a specific version needed?
ca2b7505 5737 (IniDBBuilder::buildPackageListAndNode): Add another AND clause to a
aa1e3b4d
RC
5738 list of package specifications.
5739 (IniDBBuilder::buildPackageListOrNode): Add another OR clause.
5740 (IniDBBuilder::buildPackageListOperator): Add a versioning operator
5741 to the current specification.
5742 (IniDBBuilder::buildPackageListOperatorVersion): What version does the
5743 operator act on?
5744 * IniDBBuilder.h: Declare all the IniDBBuilder.cc changes.
5745 * IniDBBuilderPackage.cc: As for IniDBBuilder.cc.
5746 (IniDBBuilderPackage::IniDBBuilderPackage): Iniitialize new members.
ca2b7505 5747 (IniDBBuilderPackage::process_src): Streamline and split out
aa1e3b4d
RC
5748 functionality.
5749 (IniDBBuilderPackage::setSourceSize): From process_src.
5750 * IniDBBuilderPackage.h: Declare the IniDBBuilderPackage.cc changes.
5751 (IniDBBuilderPackage::currentSpec): Track the in-progress specifiation.
5752 (IniDBBuilderPackage::currentOrList): Track the current Or list.
5753 (IniDBBuilderPackage::currentAndList): Track the current And list.
5754 * IniParseFeedback.cc (IniParseFeedback::progress): Provide completion
349bd18c 5755 progress on parsing.
aa1e3b4d
RC
5756 (IniParseFeedback::iniName): Tell what ini filename we are currently
5757 processing.
5758 * IniParseFeedback.h: Declare IniParseFeedback.cc changes.
ca2b7505 5759 * IniParseFindVisitor.cc (IniParseFindVisitor::IniParseFindVisitor):
aa1e3b4d
RC
5760 Make the feedback object non-const to allow mutating methods which are
5761 needed when the object has state.
5762 (IniParseFindVisitor::visitFile): Tell the caller the name of each
5763 .ini found.
5764 Initialise the parser with the feedback object to allow it to tell of
5765 progress.
5766 * IniParseFindVisitor.h: Declare IniParseFindVisitor.cc changes.
5767 * Makefile.am (inilinst_SOURCES): Add more requisite classes.
5768 (setup_SOURCES): Add the new PackageSpecification sources.
5769 * ScanFindVisitor.cc (ScanFindVisitor::visitFile): Use the new
5770 builder syntax to setup binary package details.
5771 * choose.cc: Use the LogSingleton calls throughout.
5772 * configure.in: Create the INILINT substitution correctly for recent
5773 autotool configurations.
5774 * cygpackage.cc (cygpackage::getfirstfile): Return an empty String
5775 rather than a string built from an int. Thanks to Pavel Tsekov for
5776 identifying the bug.
5777 (cygpackage::getnextfile): Ditto.
5778 * download.cc: Use LogSIngletion calls throughout.
ca2b7505 5779 (validateCachedPackage): A refactoring of the
aa1e3b4d
RC
5780 check_for_cached code to eliminate duplciation.
5781 (check_for_cached): Use validateCachedPackage to check packages.
ca2b7505 5782 * ini.cc (GuiParseFeedback): Provide gui feedback on ini name and
aa1e3b4d
RC
5783 parsing progress.
5784 (do_remote_ini): Ditto.
5785 * ini.h (ini_init): Pass a IniParseFeedback to the parser, to allow
5786 progress reporting.
5787 * inilex.l: Identify new symbols - operators, and multi line plain text.
5788 Releases files.
5789 * inilintmain.cc (show_help): Provide basic infomation on inilint.
5790 * iniparse.y: Adjust for the new builder syntax, and process debian
5791 Release files.
5792 * io_stream_file.cc: Always include mkdir.h.
5793 * list.h: Factor index location into a private routine.
5794 (list::findindex): Implement this.
ca2b7505 5795 * mkdir.cc (mkdir_p): Make the use of WIN32 code conditional on mingw
aa1e3b4d
RC
5796 builds. NB: This breaks cygwin build functionality still.
5797 * package_meta.cc: Use the LogSingleton calls throughout.
5798 (packagemeta::set_requirements): Adjust for object changes in
5799 dependencies.
5800 * package_meta.h (packagemeta::packagemeta): Initialise new members.
ca2b7505 5801 (packagemeta::architecture): What platform does this package run on?
aa1e3b4d 5802 This may need to move in the future to a per packagefile object.
58b12a06 5803 (packagemeta::priority): What priority does this package have?
aa1e3b4d
RC
5804 * package_source.h (packagesource::packagesource): Initialise new
5805 members.
5806 (packagesource::installedSize): How much space does the package need?
5807 (packagesource::setInstalledSize): Tell the amount.
5808 (packagesource::_installedSize): And store it.
ca2b7505 5809 * package_version.cc (packageversion::sourcePackage): return the
aa1e3b4d
RC
5810 source package.
5811 (packageversion::setSourcePackage): And set it.
5812 * package_version.h: Declare the package_version.cc changes.
5813 (packageversion::depends): New package specification AND list.
5814 (packageversion::predepends): Ditto.
5815 (packageversion::recommends): Ditto.
5816 (packageversion::suggests): Ditto.
5817 (packageversion::replaces): Ditto.
5818 (packageversion::conflicts): Ditto.
5819 (packageversion::provides): Ditto.
5820 (packageversion::sourcePackage): What source package is needed?
5821 * threebar.cc (ThreeBarProgressPage::SetText4): Set the label beside
5822 the bottom bar.
5823 * threebar.h: Declare the threebar.cc change.
5824
58252002-06-27 John Marshall <johnm@falch.net>
5826
5827 * res.rc (SETUPINI_MISSING): Make trailing spaces visible.
5828 * site.cc (SitePage::OnMessageCmd): Ditto
5829
2a994e0b
RC
58302002-06-15 Robert Collins <rbtcollins@hotmail.com>
5831
5832 * nio-ie5.cc (NetIO_IE5::NetIO_IE): Allow cached data.
5833
ceff7035
RC
58342002-06-15 Robert Collins <rbtcollins@hotmail.com>
5835
5836 * package_meta.cc (packagemeta::set_action): When installing packages
5837 with no binaries, choose the source package.
5838
9bd27040
RC
58392002-06-10 Robert Collins <rbtcollins@hotmail.com>
5840
5841 * IniParseFindVisitor (IniParseFindVisitor::visitFile): Apply Max
ca2b7505 5842 Bowshers fix for the crash with a root level setup.ini.
9bd27040
RC
5843 * README: Update todos.
5844
1dcff4a0
RC
58452002-05-26 Ralf Habacker <ralf.habacker@freenet.de>
5846
5847 * archive_tar.cc (archive_tar::next_file_name()): fixed broken
5848 GNU long name extension support.
349bd18c 5849
0773e4f2
RC
58502002-05-27 Robert Collins <rbtcollins@hotmail.com>
5851
ca2b7505 5852 * IniParseFindVisitor.cc (IniParseFindVisitor::visitFile): Don't
0773e4f2
RC
5853 unescape 0 length strings.
5854
a828d772
RC
58552002-05-20 Robert Collins <rbtcollins@hotmail.com>
5856
5857 * package_meta.cc (packagemeta::set_action): Don't allow reinstall
5858 when local with no cached file, and install the default source if the
5859 default version has no binary.
5860
67829ce0
RC
58612002-05-19 Robert Collins <rbtcollins@hotmail.com>
5862
5863 * IniDBBuilderPackage.cc (IniDBBuilderPackage::IniDBBuilderPackage): New
349bd18c 5864 method.
ca2b7505 5865 (IniDBBuilderPackage::buildVersion): Provide a warning when a newer
67829ce0
RC
5866 setup version created the ini file.
5867 * IniDBBuilderPackage.h (IniDBBuilderPackage::IniDBBuilderPackage): New
5868 method.
5869 * IniParseFindVisitor.cc (IniParseFindVisitor::visitFile): Use the new
5870 feedback strategy.
5871 * IniParseFindVisitor.h (IniParseFindVisitor::IniParseFindVisitor):
5872 Require a feedback strategy.
5873 * Makefile.am (setup_SOURCES): Add IniParseFeedback sources.
5874 * Makefile.in: Regenerate.
5875
4849e2fc
RC
58762002-05-19 Robert Collins <rbtcollins@hotmail.com>
5877
5878 * io_stream_file.cc (io_stream_file::remove): Use the SetFileAttributes
5879 trick to delete read only files.
ca2b7505 5880 * io_stream_cygfile.cc (io_stream_cygfile::remove): Use file:// to
4849e2fc
RC
5881 remove files.
5882 * Makefile.am (release): Tweak to be more helpful.
5883 * Makefile.in: Regenerate.
5884
7cb35117
RC
58852002-05-19 Robert Collins <rbtcollins@hotmail.com>
5886
5887 * Makefile.am (release): Tweak to be more helpful.
5888 * Makefile.in: Regenerate.
7cb35117 5889
5090e3ce
RC
58902002-05-19 Robert Collins <rbtcollins@hotmail.com>
5891
5892 * Makefile.am (release): Tweak to be more helpful.
5893 * Makefile.in: Regenerate.
5894
9e9b881a
RC
58952002-05-19 Robert Collins <rbtcollins@hotmail.com>
5896
ca2b7505 5897 * choose.cc (scan_downloaded_files): When a non-installed version
9e9b881a
RC
5898 has neither bin nor src cached files for local installs,
5899 remove the version from availability.
5900
ea36e064
RC
59012002-05-19 Robert Collins <rbtcollins@hotmail.com>
5902
5903 * ini.cc (do_remote_ini): Save uncompressed ini's correctly.
5904
b401ef47
RC
59052002-05-19 Robert Collins <rbtcollins@hotmail.com>
5906
5907 * rsync: New support library, contains librsync. This is not (yet)
349bd18c 5908 rsync interoperable.
b401ef47
RC
5909 * configure.in: --with-rsync to enable rsync support. (Not complete).
5910 * Makefile.am: Enable building with rsync.
5911 * Makefile.in: Regenerate.
5912 * configure: Ditto.
5913 * IniDBBuilder.cc (IniDBBuilder::buildPackageInstall): Pass the md5 as
5914 an array.
5915 (IniDBBuilder::buildPackageSource): Ditto.
5916 * IniDBBuilder.h: Ditto.
5917 * IniDBBuilderPackage.cc: Ditto.
5918 * IniDBBuilderPackage.h: Ditto.
5919 * FindVisitor.cc: New file.
5920 * FindVisitor.h: New file, interface for visiting a file system
5921 aggregate.
5922 * IniParseFindVisitor.cc: New file.
ca2b7505 5923 * IniParseFindVisitor.h: New file, concrete FindVisitor that parses
b401ef47
RC
5924 found setup.ini's.
5925 * README: Update TODO's.
5926 * String++.cc (String::String): New constructor for <string> inter-
5927 operability.
5928 (String::substr): New method.
5929 * String++.h: Ditto.
5930 * choose.cc (scan2): Remove.
5931 (scan_downloaded_files): Simplify.
5932 * dialog.h: Include parsing pre-requirements.
5933 * download.cc (check_for_cached): Fullname was used incorrectly - fix.
5934 * filemanip.cc (parse_filename): -src packages where incorrectly parsed.
5935 * find.cc: Rewrite. Now uses a Visitor pattern and is re-entrant.
5936 * find.h: Ditto.
5937 * fromcwd.cc: Remove unneeded includes.
5938 (is_test_version): Remove.
5939 (found_file): Remove.
5940 (SetupFindVisitor): Trivial visitor to detect setup.ini's.
5941 (found_ini): Remove.
5942 (do_fromcwd): Remove commented code that has be replaced elsewhere.
5943 * ini.cc (local_ini): Remove.
5944 (findBuilder): Remove.
5945 (find_routine): Remove.
5946 (do_local_ini): Use new IniParseFindVisitor.
5947 * iniparse.y: Typecase MD5 arrays, as we know they are allocated as
5948 unsigned char.
5949 * postinstall.cc: Remove non-core includes.
5950 (run_script_in_postinstall): Remove.
5951 (RunFindVisitor): Trivial Visitor, runs each found script.
5952 (do_postinstall): Use new find syntax.
5953
0d4e0aad
CF
59542002-05-14 Christopher Faylor <cgf@redhat.com>
5955
5956 * ini.cc (find_routine): Don't clear buffer it it's NULL.
5957
59582002-05-14 Christopher Faylor <cgf@redhat.com>
5959
5960 * filemanip.h (trail): Declare.
5961 * filemanip.cc (trail): New function.
5962 (find_tar_ext): Use trail() instead of strstr().
5963 * fromcwd.cc (check_ini): Ditto.
5964 * ini.cc (find_routine): Ditto. Don't tack local_dir to path since it
5965 should now be fully qualified. Set ini_filename. Reset error_buf and
5966 error_count for any subsequent ini file parsing.
5967 (ini_filename): New static variable for parse error reporting.
5968 (yyerror): Use full path of setup.ini in error message. Subtract one
5969 from line number if at bol.
5970 * find.cc (found_part): Eliminate.
5971 (find_sub): Call for_each with full path found rather than just file
5972 component.
5973 (find): Don't calculate found_part.
5974 * inilex.l (ini_init): Flush input buffer and reset line number.
5975 (yybol): New function. Exports YY_AT_BOL.
5976 * iniparse.y: Increase stack depth to allow more tokens to be processed.
5977 (yyparse): Remove newline from error condition to allow subsequent
5978 per-line error processing to proceed normally.
5979
59802002-05-14 Christopher Faylor <cgf@redhat.com>
5981
5982 * find.cc (find_sub): Be more defensive in preserving trailing parts of
5983 components when doing recursive directory searches or calling user
5984 supplied for_each().
5985 * ini.cc (find_routine): Don't assume that any path name with
5986 "setup.ini" in it is actually a setup.ini file. Only honor trailing
5987 components. Copy path argument to temporary storage when unescaping
5988 to prevent nuking of argument.
5989
874c569a
RC
59902002-05-12 Robert Collins <rbtcollins@hotmail.com>
5991
5992 * CONTRIBUTORS: New file.
5993
f6a81f69
RC
59942002-04-02 Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>
5995
5996 * choose.cc: Run indent.
5997 (nextbutton): Remove static variable.
5998 (default_trust): Remove use of nextbutton.
5999 (set_view_mode): Ditto.
6000 (create_listview): Add IDC_CHOOSE_PREV and IDC_CHOOSE_NEXT to ta[] so
6001 rbset() sets the prev/next/curr radio buttons properly.
6002 (dialog_cmd): Delete function.
6003 (dialog_proc): Delete function. Move WM_INITDIALOG functionality to
6004 ChooserPage::OnInit.
6005 (do_choose): Delete function. Move pre-DialogBox() code to
6006 ChooserPage::OnInit(), post-DialogBox() code to ChooserPage::OnNext.
6007 (WM_APP_START_CHOOSE): Remove define.
6008 (WM_APP_CHOOSE_IS_FINISHED): Remove define.
6009 (do_choose_thread): Delete function.
6010 (ChooserPage::OnActivate): Delete method.
6011 (ChooserPage::OnMessageApp): Delete method.
6012 (ChooserPage::OnInit): New method.
6013 (ChooserPage::OnNext): New method.
6014 (ChooserPage::OnBack): New method.
6015 (ChooserPage::OnMessageCmd): New method.
6016 * choose.h: Run indent.
6017 (ChooserPage::OnMessageApp): Delete declaration.
6018 (ChooserPage::OnActivate): Ditto.
6019 (ChooserPage::OnMessageCmd): New declaration.
6020 (ChooserPage::OnInit): Ditto.
6021 (ChooserPage::OnNext): Ditto.
6022 (ChooserPage::OnBack): Ditto.
6023 * desktop.cc (DesktopSetupPage::OnBack): Replace use of IDD_CHOOSER
6024 with IDD_CHOOSE.
6025 * fromcwd.cc (do_fromcwd): Replace use of IDD_CHOOSER with IDD_CHOOSE.
6026 * ini.cc (do_ini_thread): Replace use of IDD_CHOOSER with IDD_CHOOSE.
6027 * res.rc (IDD_CHOOSE): Remove dialog template.
6028 (IDD_CHOOSER): Alter dialog template to fit wizard size and format.
6029
74617327
RC
60302002-05-12 Robert Collins <rbtcollins@hotmail.com>
6031
6032 * LogFile.cc (endLog): Work around an apparent libg++-3 bug causing
6033 corrupt log file entries.
6034 * geturl.cc: Convert to the new LogSingleton logging.
6035
3272d625
RC
60362002-05-12 Robert Collins <rbtcollins@hotmail.com>
6037
6038 * ini.cc (do_remote_ini): Use setup.bz2 if it exists in preference to
6039 setup.ini.
6040
fc687221
RC
60412002-05-12 Robert Collins <rbtcollins@hotmail.com>
6042
6043 * geturl.h: Declare getUrlToStream.
6044 * geturl.cc (getUrlToStream): New function.
6045 (get_url_to_membuf): Refactor to use getUrlToStream.
6046
902c8a3f
RC
60472002-05-11 Robert Collins <rbtcollins@hotmail.com>
6048
6049 * Makefile.am: Add a release target to automate some of the routine
6050 work.
6051 * Makefile.in: Regenerate.
6052
2ab26cdb
RC
60532002-05-11 Robert Collins <rbtcollins@hotmail.com>
6054
6055 * choose.cc (scan_downloaded_files): On local installs remove all
6056 mirror sites if no cached copy of a package is found.
6057
94852d65
RC
60582002-05-10 Robert Collins <rbtcollins@hotmail.com>
6059
6060 * Makefile.in: Regenerate.
58b12a06 6061 * iniparse.y: Use left recursion, not right in the lines rule to
94852d65
RC
6062 avoid stack overflows.
6063 * README: Update TODO's.
6064 * io_stream_file.cc: Native builds need to include sys/stat.h
6065
3548fbc3
RC
60662002-05-06 John Marshall <jmarshall@acm.org>
6067
6068 * site.cc (SitePage::OnMessageCmd): recalculate navigation
6069 button activation when "Add" is pressed.
6070 (SitePage::CheckControlsAndDisableAccordingly): tweak comment.
6071
60722002-05-07 Robert Collins <rbtcollins@hotmail.com>
2b48ecd0
RC
6073
6074 * Makefile.am (inlint_SOURCES): Add conditional objects to inilint
6075 depending on platform.
6076 Add file:// support.
6077 * configure.in: Set conditional MINGWTARGET if compiling against mingw
6078 libraries.
6079 * Makefile.in: Regenerate.
6080 * configure: Ditto.
6081 * io_stream_file.cc: Only use win32 calls when building for mingw.
6082
19911586
RC
60832002-05-05 Robert Collins <rbtcollins@hotmail.com>
6084
6085 * Makefile.am (noinst_PROGRAMS): Make inilint configurable.
6086 * configure.in: Ditto.
6087 Fix incorrect header checking syntax.
6088 * aclocal.m4: Regenerate.
6089 * configure: Regenerate.
6090 * Makefile.in: Regenerate.
6091 * io_stream.cc: Remove platform specific and provider specific code.
6092 (io_stream::registerProvider): New method, registers a Url provider with
6093 the io_stream code.
6094 Make all methods consistently throw invalid_argument exceptions when
6095 a provider that is requested is not present.
6096 (findProvider): New private function, finds a provider.
6097 * io_stream.h: Declare io_stream::registerProvider.
6098 * io_stream_cygfile.cc: Create a Provider class to register with
6099 io_stream.cc.
6100 * io_stream_file.cc: Ditto.
6101 * archive.cc: Remove unneeded includes.
6102 * archive_tar.cc: Remove unneeded includes.
6103 * archive_tar.h: Add required include.
6104 * archive_tar_file.cc: Remove unneded includes.
6105 * choose.cc: Remove unneeded includes:
6106
bf4ffcd9
RC
61072002-05-04 Robert Collins <rbtcollins@hotmail.com>
6108
6109 * io_stream.cc: Use the new log interface thruout.
6110
9f4a0c62
RC
61112002-05-04 Robert Collins <rbtcollins@hotmail.com>
6112
6113 * log.cc (log): Reimplement via LogSingleton.
6114 (log_save): Remove.
6115 (exit_setup): Remove.
6116 * log.h (log_save): Remove.
6117 (exit_setup): Remove.
6118 * LogSingleton.cc: New file.
6119 * LogSingleton.h: New file.
6120 * LogFile.cc: New file.
6121 * LogFile.h: New file.
6122 * Makefile.am (inilint_SOURCES): Add the new log interface.
6123 (setup_SOURCES): Add the new log interface and the concrete File
6124 implementation.
6125 * Makefile.in: Regenerate.
6126 * archive.cc: Use the new log interface thruout.
6127 * archive_tar.cc: Ditto.
6128 * main.cc: Ditto.
6129 * dialog.cc (fatal): Use the new log interface.
6130 * ini.cc (do_ini_thread): Use the log interface to exit.
6131 * isntall.cc (do_install_thread): Ditto.
6132 * netio.cc (auth_cmd): Ditto.
6133 * msg.cc (fatal): Ditto.
6134 * localdir.cc (save_local_dir): Save to different files depending on
6135 the mode, and if a root dir exists.
6136
076654e7
RC
61372002-05-04 Robert Collins <rbtcollins@hotmail.com>
6138
6139 * IniDBBuilder.cc: New file.
6140 * IniDBBuilder.h: New file.
6141 * IniDBBuilderPackage.cc: New file.
6142 * IniDBBuilderPackage.h: New file.
6143 * PackageTrust.h: New file.
6144 * IniState.h: Remove, wasn't thought out well enough.
6145 * Makefile.am (inilint_SOURCES): Add more requirements.
6146 (setup_SOURCES): Add new Builder base and concrete classes.
6147 * Makefile.in: Regenerate.
6148 * String++.cc (String::String): Implement int contructor.
6149 * String++.h (String): Declare int constructor.
6150 * archive_tar.cc (archive_tar::next_file_name): Return String() when
6151 no filename exists.
6152 * archive_tar.h (archive_tar_file): Remove get_next_filename method,
6153 it's not needed.
6154 * ini.cc: Replace IniState wuth IniDBBuilderPacakge.
6155 (find_routine): Use new IniDBBuilder to configure the parser.
6156 (do_local_ini): Ditto.
6157 (do_remote_ini): Ditto.
6158 * ini.h: Use IniDBBuilder to initialise parsing.
ca2b7505 6159 * inilex.l (MD5): Parse the MD5 string correctly, we had the nibbles
076654e7
RC
6160 swapped.
6161 (ini_init): Use an IniDBBuilder rather than static variables.
6162 * iniparse.y: Hand off all the object creation to a builder, rather
ca2b7505 6163 than hardcoding the behaviour. This allows run-time configured
076654e7 6164 behaviour.
ca2b7505 6165 * io_stream_cygfile.h (io_stream_cygfile): Remove get_next_filename
076654e7
RC
6166 method, it's not needed.
6167 * io_stream_file.h (io_stream_file): Ditto.
6168 * mount.cc (cygpath): Return String() for missing mounts.
6169 * package_meta.cc (packagemeta::SDesc): Return String() for blank
6170 descriptions.
6171 * package_meta.h (trusts): Remove - replaced by PackageTrust.h.
6172 (packagemeta::packagemeta): Fix incorrect syntax in String constructor
6173 usage.
ca2b7505 6174 * cygpackage.cc (cygpackage::cygpackage): Fix incorrect syntax in
076654e7
RC
6175 String constructor usage.
6176 * site.h (site_list_type): Ditto.
6177
6391823e
RC
61782002-05-03 Robert Collins <rbtcollins@hotmail.com>
6179
6180 * String++.h: Declare a << operator that accepts String objects.
6181 * String++.cc: We need iostream for..
6182 (operator <<): this. Provide a << operator that accepts String objects.
6183 * ini.cc (yyerror): Remove the "C" classifier - it's not needed.
6184 Change from vargs to a String parameter.
6185 * inilintmail.cc: Remove the gui related headers.
6186 (yyerror): Implement this for parsing.
6187 * iniparse.y: Use the new yyerror syntax.
6188
b92028a4
RC
61892002-05-03 Robert Collins <rbtcollins@hotmail.com>
6190
6191 * Makefile.am: Add IniState.h.
6192 * Makefile.in: Regenerate.
6193 * IniState.h: New file.
6194 * choose.cc: Don't include ini.h - it's not needed.
6195 * configure: Regenerate.
6196 * desktop.cc: Don't include ini.h - it's not needed.
6197 * download.cc: Ditto.
6198 * fromcwd.cc: Ditto.
6199 * ini.cc: Use IniState.h to track each parsing calling.
6200 (find_routine): Ditto.
6201 (do_remote_ini): Ditto.
6202 (do_ini_thread): Ditto.
6203 * ini.h (ini_init): Adjust parameters to include state object.
6204 * inilex.l: Declare parser state variable.
6205 (ini_init): Adjust parameters to include state object.
ca2b7505 6206 * iniparse.y: Remove obsolete setup_timestamp and setup_version
b92028a4
RC
6207 declarations.
6208 (setup_header): Use new state variable to track time and version.
6209 (add_correct_version): Ditto.
6210 * install.cc: Don't include ini.h - it's not needed.
6211
e0a4db64
RC
62122002-05-03 Robert Collins <rbtcollins@hotmail.com>
6213
6214 * nio-files.cc (NetIO): Use io_stream syntax for get_file_size.
6215 * io_stream_file.cc: Don't include filemanip.h.
6216 (io_stream_file::get_size): Implement here to remove filemanip
6217 dependency.
6218 * io_stream_cygfile.cc: Don't include filemanip.h.
6219 (io_stream_cygfile::get_size): Implement here to remove filemanip
6220 dependency.
6221 Implement a stat based version for when win32 is not available.
6222 * filemanip.h (get_file_size): Return size_t - it's more appropriate.
6223 * filemanip.cc: Don't include win32.h - be platform independent.
6224 Include strings.h and io_stream.h as part of that.
6225 (get_file_size): Leverage io_streams and remove win32 implementation.
6226 * download.cc (check_for_cached): Use io_stream syntax for
6227 get_file_size.
6228 (download_one): Ditto.
6229
62302002-05-02 Robert Collins <rbtcollins@hotmail.com>
ac65f5c5
RC
6231
6232 * configure.in: Correct a typo in last change.
6233 * configure: Regenerate.
6234 * Makefile.in: Regenerate.
6235
e0a4db64 62362002-05-02 Robert Collins <rbtcollins@hotmail.com>
e06ded88
RC
6237
6238 * configure.in: Check for string.h and string.
6239 * configure: Regenerate.
6240 * Makefile.in: Regenerate.
6241
1fd0694a
RC
62422002-05-01 Robert Collins <rbtcollins@hotmail.com>
6243
6244 * res.rc (IDD_SPLASH): Remove white box.
6245
89ca06c0
RC
62462002-05-01 Robert Collins <rbtcollins@hotmail.com>
6247
6248 Oops! forgot to list these in the last checkin.
6249 * inilintmain.cc: New file.
6250 * md5.h: New file - imported md5 source, BSD style licence.
6251 * md5.cc: New file - imported md5 source, BSD style licence.
6252 * Exception.cc: New file.
6253 * Exception.h: New file.
6254 * MD5++.cc: New file.
6255 * MD5++.h: New file.
6256
58ee6135
RC
62572002-05-01 Robert Collins <rbtcollins@hotmail.com>
6258
ca2b7505 6259 * Makefile.am (AM_CFLAGS): Remove -mwindows, it's a linker flag.
58ee6135
RC
6260 Remove -fno-rtti, we need it for exceptions.
6261 (AM_CXXFLAGS): Ditto.
6262 (WARNONLY_CFLAGS): Ditto.
6263 (EXTRA_PROGRAMS): Add with initial linter sources - not functional yet.
6264 (setup_LDFLAGS): Add and set to -mwindows.
6265 (setup_SOURCES): Add new sources.
6266 * Makefile.in: Regenerate.
6267 * README: Update TODO.
6268 * choose.cc (scan_downloaded_files): Use ini information if it's
6269 available.
6270 * configure: Regenerate.
6271 * download.cc (check_for_cached): Make reusable from elsewhere.
6272 Throw exceptions on errors (as opposed to failures).
6273 Check MD5 sum when it's known.
6274 (download_one): Never force a download.
6275 Handle corrupt package exceptions.
6276 * ini.cc (find_routine): Reverse escape the URL to correctly identify
6277 the site URL.
6278 * inilex.l (MD5): Provide a parsing rule (note: lowercase is required).
ca2b7505 6279 * iniparse.y: Allow calculation of MD5 sums, and allow src only
58ee6135
RC
6280 packages.
6281 (process_src): New helper function.
6282 * isntall.cc (install_one_source): Check MD5 sums when possible.
6283 Throw exceptions on errors.
6284 (do_install_thread): Handle exceptions for installation calls.
6285 * package_source.h: Store MD5 information.
6286 * propsheet.cc (PropSheet::Create): Add a useful comment.
6287 * res.rc (IDS_INSTALL_ERROR): Define.
6288 (IDS_CORRUPT_PACKAGE): Define.
6289 * resource.h (IDS_INSTALL_ERROR): Define.
6290 (IDS_CORRUPT_PACKAGE): Define.
6291 * rfc1738.cc (rfc1738_unescape_part): Implement.
6292 * rfc1738.h (rfc1738_unescape_part): Declare.
6293
45e01f23
RC
62942002-04-29 Robert Collins <rbtcollins@hotmail.com>
6295
6296 * Makefile.am: Remove dependecy rules that automake emits.
6297 Correct badly copied dependency info for manually compiled files.
58b12a06 6298 (setup_SOURCES): Add all used headers.
45e01f23
RC
6299 (EXTRA_DIST): Include non compilate but required sources.
6300 (setup_LDADD): Remove mingw32, it is autodetected.
6301 * Makefile.in: Regenerate.
6302 * String++.h: sys/types is a system header.
6303 * choose.cc (do_choose_thread): Make into a Win32 thread routine.
6304 Use ExitThread.
6305 (ChooserPage::OnMessageApp): Use Win32 threads. (_beginthread is not
6306 portable).
6307 * configure: Regenerate.
6308 * configure.in: Check for mingw32/cygwin specific headers and libraries.
ca2b7505 6309 * cygpackage.h: Include the win32.h header to get correct macro
45e01f23
RC
6310 definitions in all situations.
6311 * download.cc (do_download_reflector): Make into a Win32 thread routine.
6312 Use ExitThread.
6313 (do_download): Use Win32 threads.
6314 * ini.cc: Ditto.
6315 * install.cc: Ditto.
ca2b7505 6316 * (WinMain): Adjust to build valid command line using application
45e01f23 6317 under both mingw32 and cygwin.
ca2b7505 6318 * mount.cc (set)cygdrive_flags): Create new system flags if the
45e01f23
RC
6319 user requests system and the value does not exist.
6320 * nio-http.cc: Define a _strnicmp for cygwin.
6321 * package_db.cc: Include <errno.h> if it exists.
ca2b7505 6322 * site.cc (do_download_site_info_thread): Make into a Win32 thread
45e01f23
RC
6323 routine.
6324 Use ExitThread.
6325 (do_download_site-Info): Use Win32 threads.
ca2b7505 6326 * state.cc: Explicity declare variables to avoid header conflicts
45e01f23
RC
6327 caused by '#define extern" on cygwin.
6328 * win32.h: Include <alloca.h> if it exists.
6329 (_MAX_PATH): Define as MAX_PATH when not defined by windows.h.
6330 (_access): Define as access if not defined by windows.h.
6331
8bb9dad9
RC
63322002-04-27 Robert Collins <rbtcollins@hotmail.com>
6333
6334 * compress_gz.cc (compress_gz::error): EOF is not an error condition.
6335
6908b7d7
RC
63362002-04-27 Robert Collins <rbtcollins@hotmail.com>
6337
6338 * Makefile.am: Add libgetopt++ to the subdirs list.
6339 Search the libgetopt++ header directory.
6340 Link against libgetopt++.la.
6341 (setup_SOURCES): Remove GetOption.cc and getopt.c and Option.cc.
6342 (setup_LDADD): Explicitly include res.o.
6343 * Makefile.in: Regenerate.
6344 * aclocal.m4: Regenerate.
6345 * bootstrap.sh: Call libtoolize.
6346 * configure: Regenerate.
6347 * configure.in: Add libtool support and configure libgetopt++.
6348 * desktop.cc (NoShortcutsOption): Turn into a BoolOption.
6349 (DesktopSetupPage::OnInit): Use the simpler syntax.
6350 * desktop.h: Remove dependency on Option.h, and remove NoShortcustOption
6351 declaration.
6352 * main.cc: Include getopt++/GetOption.h.
6353 (main): Use simpler syntax.
6354 * cdefs.h: Remove.
6355 * getopt.h: Remove.
6356 * getopt.c: Remove.
6357 * GetOption.h: Remove.
6358 * GetOption.cc: Remove.
6359 * Option.h: Remove.
6360 * Option.cc: Remove.
6361
9063358a
RC
63622002-04-26 Robert Collins <rbtcollins@hotmail.com>
6363
6364 * Makefile.am: Add zlib and bz2lib to SUBDIRS.
6365
f6100b6f
RC
63662002-04-26 Robert Collins <rbtcollins@hotmail.com>
6367
6368 * aclocal.m4: New file, cached macros.
ca2b7505 6369 * bootstrap.sh: New file, calls required autotools in appropriate
f6100b6f
RC
6370 order.
6371 * Makefile.am: New file, input Makefile for automake.
6372 * Makefile,in: Now a generated file - regenerate.
6373 * configure: Regenerate.
6374 * configure.in: Add automake support.
6375 * inilex.l: Change VERSION to PACKAGEVERSION to avoid a collision with
6376 automake's VERSION define.
6377 * iniparse.y: Ditto.
6378
db04fc41
RC
63792002-04-26 Robert Collins <rbtcollins@hotmail.com>
6380
6381 * cdefs.h: New file, imported to allow getopt.c to build without
6382 cygwin headers.
6383 * getopt.h: New file, imported to allow building without cygwin headers.
6384 * getopt.c: Ditto.
6385 * bz2lib: New directory, contains copy of bz2lib.
6386 * cfgaux: New directory, contains autotool helper scripts.
ca2b7505 6387 * Makefile,in: Adjust library and target definitions for building
db04fc41
RC
6388 outside the sourceware tree.
6389 * compress_bz.h: Use new bz2lib header location.
6390 * mount.cc: Import key defines and enums to be independent of cygwin
6391 headers.
ca2b7505 6392 * configure.in: Update to autoconf 2.53, and to be sourceware
db04fc41
RC
6393 independent.
6394 * configure: Regenerate.
6395
931f2755
RC
63962002-04-12 Robert Collins <rbtcollins@hotmail.com>
6397
6398 * mklink2.cc (make_link_2): Tweak to work with current w32api
6399 headers.
6400
64012002-04-10 Pavel Tsekov <ptsekov@gmx.net>
6402
6403 * version.cc (canonicalize_version): Fix a call delete[]
6404 to delete the allocated address.
6405
64062002-03-29 Robert Collins <rbtcollins@hotmail.com>
6407
6408 * PickView.cc (PickView::set_headers): Set last_col correctly. Thanks
6409 to Ton van Overbeek for locating the bug area.
6410
49cf3899
RC
64112003-03-27 Robert Collins <rbtcollins@hotmail.com>
6412
6413 * PickView.cc (PickView::insert_pkg): Be more generic with
6414 object use.
6415 (PickView::insert_category): Ditto.
6416 (PickView::~PickView): Create.
6417 * PickView.h (PickView::~PickView): Declare.
6418
1be8f8fd
RC
64192003-03-27 Robert Collins <rbtcollins@hotmail.com>
6420
6421 * Makefile.in (OBJS): Add new commandline objects.
6422 * desktop.cc (NoShortCutsOption): New option code.
6423 (DesktopSetupPage::OnInit): Check whether to skip shortcuts.
6424 * desktop.h (NoShortCutsOption): New concrete command line option class.
6425 * main.cc (WinMain): Process command line options.
6426 * GetOption.h: New file, singleton command line class.
6427 * GetOption.cc: New file, implementation of the above.
6428 * Option.h : New file, abstract option for GetOption.
6429 * Option.cc: New file, implement constructor and destructor.
6430
f2e49cf8
RC
64312002-03-26 Pavel Tsekov <ptsekov@gmx.net>
6432
58b12a06 6433 * mkdir.cc (mkdir_p): Stop processing if the path is exhausted.
f2e49cf8
RC
6434
64352002-03-26 Ton van Overbeek <tvoverbe@cistron.nl>
6436
58b12a06
MB
6437 * PickPackageLine.cc (PickPackageline::paint): Adjust clipping rectangle
6438 to textheight, so large fonts work.
f2e49cf8
RC
6439
64402003-03-26 Robert Collins <rbtcollins@hotmail.com>
6441
58b12a06
MB
6442 * io_stream_cygfile.cc (io_stream_cygfile::mklink): Don't translate
6443 symlinks.
f2e49cf8
RC
6444
64452003-03-26 Robert Collins <rbtcollins@hotmail.com>
6446
58b12a06
MB
6447 * io_stream_cygfile.cc (cwd): New static for cwd storage.
6448 (io_stream_cygfile::normalise): New method.
6449 (io_stream_cygfile::io_stream_cygfile): Use it.
6450 (io_stream_cygfile::exists): Ditto.
6451 (io_stream_cygfile::remove): Ditto.
6452 (io_stream_cygfile::mklink): And again.
6453 (cygmkdir_p): Yes, again.
6454 (io_stream_cygfile::move): And once more.
6455 * io_stream_cygfile.h (io_stream_cygfile::normalise): Declare.
6456 (io_stream_cygfile::cwd): Ditto.
f2e49cf8 6457
51ebb760
RC
64582003-03-26 Robert Collins <rbtcollins@hotmail.com>
6459
6460 * package_meta.cc (package_meta::~package_meta): Remove duplicate.
ca2b7505 6461 (CategoryPackage::~CategoryPackage): Ditto. (Thanks to Ton van
51ebb760
RC
6462 Overbeek for the report).
6463 * mklink2.cc: Moved from mklink2.c to avoid 'not a prototype error'.
6464 Make g++ compatible.
6465 * mklink2.c: Remove.
6466 * site.cc (site_list_type::init): Delete the correct memory addres.
6467 Thanks to Pavel Tsekov for tracking this down.
6468
e7d67c03
RC
64692002-03-20 Robert Collins <rbtcollins@hotmail.com>
6470
6471 * win32.h: Only define alloca if it's not already.
6472
2fa7c5a4
RC
64732002-03-20 Robert Collins <rbtcollins@hotmail.com>
6474
58b12a06
MB
6475 * package_meta.h (packamgemeta::trustp): Make 'test' choice leave
6476 installed packages alone.
2fa7c5a4
RC
6477 * README: Update with latest requests.
6478 * Various: MTC fixes from setup200202 branch.
6479
7bf13fc9
CF
64802002-03-19 Christopher Faylor <cgf@redhat.com>
6481
6482 * Makefile.in (setup_version.c): Add back magic which allows detection
6483 of setup.exe version number.
6484
2fa7c5a4
RC
64852002-03-17 Robert Collins <rbtcollins@hotmail.com>
6486
58b12a06 6487 * PickPackageLine.cc (PickPackageLine::paint): Fix incorrect clip region
2fa7c5a4
RC
6488 calculation on win9x systems.
6489
64902002-03-16 Robert Collins <rbtcollins@hotmail.com>
6491
58b12a06
MB
6492 * install.cc (install_one_source): Write the correct length of a string
6493 to the lst file (Thanks to Pavel Tsekov for reporting the bug).
2fa7c5a4
RC
6494
64952002-03-15 Robert Collins <rbtcollins@hotmail.com>
6496
6497 * choose.cc (list_click): Always refresh the entire chooser, as our
58b12a06
MB
6498 package state change mechanism is broken with the new improved list
6499 classes.
2fa7c5a4
RC
6500
65012002-03-15 Robert Collins <rbtcollins@hotmail.com>
6502
58b12a06
MB
6503 * desktop.cc (make_passwd_group): Check for .lnk suffix on /etc/passwd
6504 and /etc/group.
2fa7c5a4
RC
6505
65062002-03-15 Robert Collins <rbtcollins@hotmail.com>
6507
58b12a06
MB
6508 * PickPackageLine.cc (PickPackageLine::DrawCheck): New method factored
6509 out from paint().
6510 (PickPackageLine::paint): Use DrawCheck to draw the src tick box, and
6511 the new bin tickbox.
2fa7c5a4
RC
6512 (PickPackageLine::click): Handle the new bin tickbox.
6513 * PickPackageLine.h (PickPackageLine::DrawCheck): Declare this.
6514 * PickView.cc (pkg_headers): Add a Bin? column.
6515 (cat_headers): Ditto.
6516 (PickView::set_headers): Ditto.
6517 (PickView::init_headers): Ditto.
6518 * PickView.h (PickView): Ditto.
58b12a06
MB
6519 * choose.cc (list_click): Use the new name for src_col to set the clip
6520 rectangle.
2fa7c5a4
RC
6521
65222002-02-24 Michael A Chase <mchase@ix.netcom.com>
6523
6524 * io_stream_cygfile.cc (io_stream_cygfile::mklink): Fix up Robert's
6525 fixup.
6526
65272002-02-24 Michael A Chase <mchase@ix.netcom.com>
6528
6529 * desktop.cc (make_link): Add "file://" prefix to io_stream::mkpath_p()
6530 call.
6531 (make_passwd_group): Ditto.
6532 * localdir.cc (save_local_dir): Ditto.
6533 * io_stream_cygfile.cc (io_stream_cygfile::mklink): Wrap long lines.
6534 Add "cygfile://" prefix to io_stream::open() calls.
6535
204315f9
RC
65362002-02-24 Robert Collins <rbtcollins@hotmail.com>
6537
6538 * log.cc (log_save): Fix creating /var/log.
6539 * packate_meta.cc (standard_dirs): Remove duplicate '/''s.
6540
58db1046
RC
65412002-02-24 Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>
6542
6543 * res.rc (STRINGTABLE): Add IDS_CYGWIN_SETUP and
6544 IDS_CYGWIN_SETUP_WITH_PROGRESS strings.
6545 * resource.h: Add IDS_CYGWIN_SETUP and
6546 IDS_CYGWIN_SETUP_WITH_PROGRESS IDs.
6547
6548 * splash.cc (OnInit): Qualify SetWindowText() call with global scope
6549 operator (::SetWindowText()).
6550
6551 * threebar.cc: Run indent.
6552 (cistring.h): Add include.
6553 (SetText1, SetText2, SetText3): Qualify SetWindowText() call with
6554 global scope operator.
6555 (SetBar2): Add logic for writing percent complete into window title.
6556
6557 * window.h: Run indent.
6558 (SetWindowText): New function.
6559 (String): Add forward declaration.
6560 * window.cc: Run indent.
6561 (String++.h): Add include.
6562 (SetWindowText): New function.
6563
490717ef
RC
65642002-02-24 Robert Collins <rbtcollins@hotmail.com>
6565
6566 * README: Update TODO list.
6567 * install.cc (install_one): Fix src package location.
6568 (do_install_thread): Fix creating directories.
6569
7c6ef2c3
RC
65702002-02-19 Robert Collins <rbtcollins@hotmail.com>
6571
6572 * choose.cc: Include cygpackage.h for scan2 use.
6573 (set_existence): Ignore setup.ini mirrors when installing from cwd.
6574 (scan2): Process any valid file.
58b12a06
MB
6575 Add cache entries when a file matching a setup.ini listed version is
6576 found.
7c6ef2c3
RC
6577 * filemanip.cc (parse_filename): Remove pkgtar - not used anywhere else.
6578 * filemanip.h (filemanip::pkgtar): Remove.
6579 * package_meta.cc (CategoryPackage::~CategoryPackage): New method.
6580 (packagemeta::~packagemeta): Move from package_meta.h
6581 Remove and delete all version and category information.
6582 * package_meta.h (CategoryPackage): Create a destructor.
6583 (packagemeta::~packagemeta): Move to .cc file.
6584
65852002-02-19 Robert Collins <rbtcollins@hotmail.com>
6586
6587 * install.cc (install_one_source): Make NULL cached package names cause
6588 errors.
6589
bb087dce
RC
65902002-02-18 Michael A Chase <mchase@ix.netcom.com>
6591
6592 * desktop.cc (make_passwd_group): Don't create passwd-grp.bat
6593 unnecessarily.
6594
65952002-02-18 Michael A Chase <mchase@ix.netcom.com>
6596
6597 * log.cc (log_save): Put "\n" at end of log lines instead of "'".
6598
c90bc3df
RC
65992002-02-19 Robert Collins <rbtcollins@hotmail.com>
6600
6601 * mount.cc (create_mount): Avoid a const char*->char* warning.
6602 (read_mounts): Ditto.
6603
3bab9a49
RC
66042002-02-05 Jason Tishler <jason@tishler.net>
6605
58b12a06 6606 * download.cc (do_download_thread): Fix off-by-one error.
3bab9a49 6607
1ac649ed
RC
66082002-02-19 Robert Collins <rbtcollins@hotmail.com>
6609
6610 * configure.in (CXXFLAGS): Substitute at configure time, not runtime.
6611 * configure (CXXFLAGS): Regenerate.
6612 * Makefile.in (iniparse.o): Build via default rules - no errors now.
6613 * README: TODO list updates.
6614
66152002-02-19 Michael A Chase <mchase@ix.netcom.com>
6616
6617 * String++.cc (String::concat):: Remove.
6618 (String::vconcat):: Ditto.
6619 * String++.h (String::concat):: Remove.
6620 (String::vconcat):: Ditto.
6621 * archive_tar.cc: Don't include concat.h.
6622 * archive_tar_file.cc: Don't include concat.h.
6623 * compress_bz.cc (compress_bz::peek): Don't log unneeded messages.
6624 (compress_bz::seek): Ditto.
6625 (compress_bz::~compress_bz): Ditto.
6626 * compress_gz.cc (compress_gz::peek): Ditto.
6627 (compress_gz::error): Ditto.
6628 (compress_gz::~compress_gz): Ditto.
6629 * concat.cc (vconcat): Remove.
6630 (concat): Ditto.
6631 * concat.h (vconcat): Remove.
6632 (concat): Ditto.
6633 * desktop.cc (desktop_icon): Use new cygpath.
6634 (make_etc_profile): Ditto.
6635 (uexists): Ditto.
6636 (make_passwd_group): Ditto.
6637 (save_icon): Ditto.
6638 (check_desktop): Remove concat use.
6639 (check_start_menu): Ditto.
6640 * download.cc (download_one): Use new mkpath_p correctly.
6641 Use LOG_PLAIN.
6642 * fromcwd.cc: Don't include concat.h.
6643 * geturl.cc (get_url_to_membuf): Use String log() call.
6644 (get_url_to_file): Ditto.
6645 * install.cc: Don't include concat.h.
6646 (uninstall_one): Use LOG_PLAIN.
6647 (replace_one): Ditto.
6648 (install_one_source): Ditto.
6649 (install_one): More char to String conversion.
6650 (do_install_thread): Use new cygpath.
6651 Use new create_mount.
6652 * io_stream.cc (io_stream::move): Use new log().
58b12a06
MB
6653 * io_stream_cygfile (io_stream_cygfile::io_stream_cygfile): Use new
6654 cygpath.
1ac649ed
RC
6655 (io_stream_cygfile::exists): Ditto.
6656 (io_stream_cygfile::remove): Ditto.
6657 (io_stream_cygfile::mklink): Ditto.
6658 (io_stream_cygfile::write): Ditto.
6659 (cygmkdir_p): Ditto.
6660 (io_stream_cygfile::move): Ditto.
6661 * io_stream_file.cc: Don't include log.h.
6662 (io_stream_file::write): Don't log unneeded messages.
6663 * localdir.cc: Don't include concat.h.
6664 (LocalDirPage::OnNext): Use LOG_PLAIN.
6665 * log.cc: Don't include log.h.
6666 (exit_setup): Use new cygpath.
6667 * log.h (log_level): Add new level LOG_PLAIN.
6668 * main.cc (WinMain): Use new log().
6669 * mount.cc (SLASH_P): New macro from concat.h.
6670 (cygpath): Make String version globally visible.
6671 Remove varargs version.
6672 * mount,h: Ditto.
6673 * msg.cc (mbox): Use LOG_PLAIN.
6674 * net.cc (NetPage::OnNext): Ditto.
6675 * nio-ftp.cc (ftp_line): Use new log().
6676 * nio-http.cc: Don't include log.h.
6677 (retry_get): Use alternative url variable.
6678 * package_db.cc: Don't include concat.h.
6679 (packagedb::flush): Don't use concat.
6680 * package_meta.cc: Don't include concat.h.
6681 (packagemeta::uninstall): Use new cygpath.
6682 * postinstall.cc (do_postinstall): Ditto.
6683 * root.cc (RootPage::OnNext): Use LOG_PLAIN.
6684 * script.cc: Don't include concat.h.
6685 (init_run_script): Use new cygpath.
6686 (run_script): More char * to String conversion.
6687 (try_run_script): Ditto.
6688 * site.cc: Don't include concat.h.
6689 (SitePage::OnNext): Use LOG_PLAIN.
6690 (SitePage::OnMessageCmd): Use new log().
6691 * source.cc (SourcePage::OnDeactivate): Use LOG_PLAIN.
6692
3c054baf
RC
66932002-02-19 Robert Collins <rbtcollins@hotmail.com>
6694
6695 * Makefile.in (OBJS): Add new object.
58b12a06
MB
6696 * PickCategoryLine.cc (PickCategoryLine::paint): Print a "+" before the
6697 name.
3c054baf
RC
6698 * PickCategoryLine.h (PickCategoryLine::bucket): Use the String class.
6699 * PickLine.h (Pickline::key): Change to a String to help plug leaks.
6700 (PickLine::Pickline): Accept a String for the key.
58b12a06
MB
6701 * PickPackageLine.cc (PickPackageLine::paint): Convert all char use to
6702 Strings.
6703 * PickPackageLine.h (PickPackageLine::PickPackageLine): The key is
6704 automatically initialised now.
3c054baf 6705 * PickView.cc (PickView::note_width): Convert all char * use to Strings.
58b12a06
MB
6706 (PickView::init_header): Move category length checking out of the inner
6707 loop for efficiency.
3c054baf
RC
6708 Convert all char use to Strings.
6709 * PickView.h: Include the String++ header.
6710 (PickView::note_width): Update the prototype.
6711 * String++.cc: New file, implements a reference counting string class.
6712 * String++.h: New file, declares a reference counting string class.
6713 * archive.cc: Include String++ instead of concat.
6714 (archive::extract_file): Convert char * usage to Strings.
6715 * archive.h: Inlude the String++ header.
6716 (archive::extract_file): Update prototype.
6717 (archive::next_file_name): Convert to a String.
6718 (archive::linktarget): Ditto.
6719 * archive_tar.cc (archive_tar::next_file_name): Convert to String usage.
6720 (archive_tar::linktarget): Ditto.
6721 * arhive_tar.h: Update the copyright.
6722 Explicitly include the relevant headers.
6723 (tar_map_result_type): Convert to String usage.
6724 (archive_tar::next_file_name): Update prototype.
6725 (archive_tar::linktarget): Ditto.
6726 * category.cc (Category::Category): Update initialisers.
6727 Convert to String usage.
6728 (Categorycmp): Update to String usage.
6729 * category.h: Include the String++ header.
6730 (Category::Category): Update to String usage.
6731 (Category::name): Ditto.
6732 (Category::key): Ditto.
6733 * choose.cc: Remove concat.h, it's not needed.
6734 (scan2): Update to String usage.
6735 (do_choose): Ditto.
6736 * cygpackage.cc: Update includes for use of String class.
6737 (cygpackage::cygpackage): Update for String usage.
6738 (cygpackage::set_canonical_version): Ditto.
6739 (cygpackage::destroy): Ditto.
6740 (cygpackage::getfirstfile): Ditto.
6741 (cygpackage::getnextfile): Ditto.
6742 (cygpackage::Name): Ditto.
6743 (cygpackage::Vendor_version): Ditto.
6744 (cygpackage::Package_version): Ditto.
6745 (cygpackage::Canonical_version): Ditto.
6746 (cygpackage::set_sdesc): Ditto.
6747 (cygpackage::set_ldesc): Ditto.
6748 * cygpackage.h: Include String++.h for parsing this file.
6749 (cygpackage::cygpackage): Update for String usage.
6750 (cygpackage::set_canonical_version): Ditto.
6751 (cygpackage::destroy): Ditto.
6752 (cygpackage::getfirstfile): Ditto.
6753 (cygpackage::getnextfile): Ditto.
6754 (cygpackage::Name): Ditto.
6755 (cygpackage::Vendor_version): Ditto.
6756 (cygpackage::Package_version): Ditto.
6757 (cygpackage::Canonical_version): Ditto.
6758 (cygpackage::set_sdesc): Ditto.
6759 (cygpackage::set_ldesc): Ditto.
6760 (cygpackage::name): Ditto.
6761 (cygpackage::vendor): Ditto.
6762 (cygpackage::packagev): Ditto.
6763 (cygpackage::canonical): Ditto.
6764 (cygpackage::fn): Ditto.
6765 (cygpackage::sdesc): Ditto.
6766 (cygpackage::ldesc): Ditto.
6767 * desktop.cc: Update includes for use of String class.
6768 (batname): Update for String usage.
6769 (iconname): Ditto.
6770 (make_link): Ditto.
6771 (start)menu): Ditto.
6772 (desktop_icon): Ditto.
6773 (make_cygwin_bat): Ditto.
6774 (make_etc_profile): Ditto.
6775 (uexists): Ditto.
6776 (make_passwd_group): Ditto.
6777 (save_icon): Ditto.
6778 (check_desktop): Ditto.
6779 (check_startmenu): Ditto.
6780 * dialog.cc (eget): Update for String usage.
6781 (egetString): New function.
6782 (eset): New variant for Strings.
6783 * dialog.h: Include String++.h for parsing this file.
6784 (egetString): New function.
6785 (eset): New variant for Strings.
6786 * diskfull.cc (diskfull): Update for String usage.
6787 * diskfull.h: Include String++.h for parsing this file.
6788 (diskfull): Update for String usage.
6789 * download.cc: Update includes for use of String class.
6790 (check_for_cached): Update for String usage.
6791 (download_one): Ditto.
6792 * filemanip.cc (get_file_size): Ditto.
6793 (base): Ditto.
6794 (parse_filename): Ditto.
6795 (backslash): Ditto.
6796 * filemanip.h: Include String++.h for parsing this file.
6797 (fileparse): Update for String usage.
6798 (base): Ditto.
6799 (parse_filename): Ditto.
6800 Don't consider '_' to be a separator.
6801 (backslash): Ditto.
6802 * find.cc: Update includes for use of String class.
6803 (find_sub): Make more flexible.
6804 (find): Update for String usage.
6805 * find.h (find): Use Strings.
6806 * fromcwd.cc (found_file): Update for String usage.
6807 * geturl.cc: Ditto.
6808 (init_dialog): Ditto.
6809 (get_url_to_membuf): Ditto.
6810 (get_url_to_string): Ditto.
6811 (get_url_to_file): Ditto.
6812 * geturl.h: Ditto.
6813 (get_url_to_membuf): Ditto.
6814 (get_url_to_string): Ditto.
6815 (get_url_to_file): Ditto.
6816 * hash.h: Ditto.
6817 (add_subdirs): Ditto.
6818 * ini.cc: Update includes for String usage.
6819 (find_routine): Update for String usage.
6820 (do_remote_ini): Ditto.
6821 (do_ini_thread): Ditto.
6822 * ini.h (ini_init): Ditto.
6823 * inilex.l: Update includes for String usage.
6824 (ini_init): Update for String usage.
6825 * iniparse.y: Ditto.
6826 (add_correct_version): Ditto.
6827 * install.cc: Update includes for String usage.
6828 (install_one_source): Update for String usage.
6829 (uninstall_one): Ditto.
6830 (replace_one): Ditto.
6831 (install_one_source): Ditto.
6832 (do_install_thread): Ditto.
6833 * io_stream.cc: Update includes for String usage.
6834 (io_stream::open): Update for String usage.
6835 (io_stream::mkpath_p): Ditto.
6836 (io_stream::remove): Ditto.
6837 (io_stream::mklink): Ditto.
6838 (io_stream::move_copy): Ditto.
6839 (io_stream::move): Ditto.
6840 (io_stream::exists): Ditto.
6841 * io_stream.h: Update includes to allow correct parsing.
6842 (io_stream::open): Update for String usage.
6843 (io_stream::mkpath_p): Ditto.
6844 (io_stream::remove): Ditto.
6845 (io_stream::mklink): Ditto.
6846 (io_stream::move_copy): Ditto.
6847 (io_stream::move): Ditto.
6848 (io_stream::exists): Ditto.
6849 * io_stream_cygfile.cc: Update includes for String usage.
6850 (get_root_dir_now): Update for String usage.
6851 (io_stream_cygfile::io_stream_cygfile): Ditto.
6852 (io_stream_cygfile::~io_stream_cygfile): Ditto.
6853 (io_stream_cygfile::exists): Ditto.
6854 (io_stream_cygfile::remove): Ditto.
6855 (io_stream_cygfile::mklink): Ditto.
6856 (cygmkdir_p): Ditto.
6857 (io_stream_cygfile::set_mtime): Ditto.
6858 (io_stream_cygfile::move): Ditto.
6859 (io_stream_cygfile::get_size): Ditto.
6860 * io_stream_cygfile.h: Update includes for String usage.
6861 (io_stream_cygfile::io_stream_cygfile): Update for String usage.
6862 (io_stream_cygfile::~io_stream_cygfile): Ditto.
6863 (io_stream_cygfile::exists): Ditto.
6864 (io_stream_cygfile::remove): Ditto.
6865 (io_stream_cygfile::mklink): Ditto.
6866 (cygmkdir_p): Ditto.
6867 (io_stream_cygfile::set_mtime): Ditto.
6868 (io_stream_cygfile::move): Ditto.
6869 (io_stream_cygfile::get_size): Ditto.
6870 (io_stream_cygfile::fname): Ditto.
6871 (io_stream_cygfile::lmode): Ditto.
6872 * io_stream_file.cc: Update includes for String usage.
6873 (io_stream_file::io_stream_file): Update for String usage.
6874 (io_stream_file::~io_stream_file): Ditto.
6875 (io_stream_file::exists): Ditto.
6876 (io_stream_file::remove): Ditto.
6877 (io_stream_file::mklink): Ditto.
6878 (io_stream_file::set_mtime): Ditto.
6879 (io_stream_file::move): Ditto.
6880 (io_stream_file::get_size): Ditto.
6881 * io_stream_file.h: Update includes for String usage.
6882 * io_stream_file.cc: Update includes for String usage.
6883 (io_stream_file::io_stream_file): Update for String usage.
6884 (io_stream_file::~io_stream_file): Ditto.
6885 (io_stream_file::exists): Ditto.
6886 (io_stream_file::remove): Ditto.
6887 (io_stream_file::mklink): Ditto.
6888 (io_stream_file::set_mtime): Ditto.
6889 (io_stream_file::move): Ditto.
6890 (io_stream_file::get_size): Ditto.
6891 (io_stream_file::fname): Ditto.
6892 (io_stream_file::lmode): Ditto.
6893 * localdir.cc: Update includes for String usage.
6894 (save_local_dir): Update for String usage.
6895 (check_if_enable_next): Ditto.
6896 (load_dialog): Ditto.
6897 (browse_cb): Ditto.
6898 (LocalDirPage::OnInit): Ditto.
6899 (LocalDirPage::OnNext): Ditto.
6900 * log.cc: Update includes for String usage.
6901 (struct LogEnt): Update for String usage.
6902 (log): Ditto.
6903 (log_save): Ditto.
6904 (exit_setup): Ditto.
6905 * log.h: Update includes for String usage.
6906 (log_level): Update for String usage.
6907 (log): Ditto.
6908 (log_save): Ditto.
6909 * main.cc (WinMain): Update for String usage.
6910 * mklink2.c (make_link_2): Update for String usage.
6911 * mklink2.h (make_link_2): Update for String usage.
6912 * mount.cc: Update includes for String usage.
6913 (mount_table): Update for String usage.
6914 (find2): Ditto.
6915 (create_mount): Ditto.
6916 (remove1): Ditto.
6917 (remove_mount): Ditto.
6918 (read_mounts): Ditto.
6919 (set_root_dir): Ditto.
6920 (get_root_dir): Ditto.
6921 (path_prefix_p): Ditto.
6922 (cygpath): Ditto.
6923 * mount.h: Update includes for String usage.
6924 (create_mount): Update for String usage.
6925 (remove_mount): Ditto.
6926 (cygpath): Ditto.
6927 (set_root_dir): Ditto.
6928 (get_root_dir): Ditto.
6929 * msg.cc (mbox): Ditto.
6930 * net.cc (NetPage::OnNext): Ditto.
6931 * package_db.cc (packagedb::flush): Ditto.
6932 (packagedb::packages): Ditto.
6933 (packagedb::categories): Ditto.
6934 * package_db.h: Update includes for String usage.
6935 (packagedb::packages): Update for String usage.
6936 (packagedb::categories): Ditto.
6937 * package_meta.cc: Update includes for String usage.
6938 (hash::add_subdirs): Update for String usage.
6939 (packagemeta::uninstall): Ditto.
6940 (packagemeta::SDesc): Ditto.
6941 (packagemeta::action_caption): Ditto.
6942 * package_meta.h: Update includes for String usage.
6943 (packagemeta::packagemeta): Update for String usage.
6944 (packagemeta::~packagemeta): Ditto.
6945 (packagemeta::uninstall): Ditto.
6946 (packagemeta::SDesc): Ditto.
6947 (packagemeta::action_caption): Ditto.
6948 (package_source.cc site::site): Ditto.
6949 (packagesource::set_canonical): Ditto.
6950 (packagesource::set_cached): Ditto.
6951 * package_source.h: Update includes for String usage.
6952 (site::site): Update for String usage.
6953 (packagesource::set_canonical): Ditto.
6954 (packagesource::set_cached): Ditto.
6955 (packagesource::packagesource): Ditto.
6956 (packagesource::sites): Ditto.
6957 (packagesource::cached): Ditto.
6958 * package_version.h: Update includes for String usage.
6959 (Dependency): Update for String usage.
6960 (packageversion): Ditto.
6961 * postinstall.cc: Update includes for String usage.
6962 (do_postinstall): Update for String usage.
6963 * res.rc (IDD_LOCAL_DIR): Fix typo again!
6964 * rfc1738.cc (rfc1738_escape_part): Update for String usage.
6965 * rfc1738.h: Update includes for String usage.
6966 (rfc1738_escape_part): Update for String usage.
6967 * root.cc: Update includes for String usage.
6968 (check_if_enable_next): Update for String usage.
6969 (save_dialog): Ditto.
6970 (browse_cb): Ditto.
6971 (directory_is_absolute): Ditto.
6972 (directory_is_rootdir): Ditto.
6973 (directory_has_spaces): Ditto.
6974 (RootPage::OnInit): Ditto.
6975 (RootPage::OnNext): Ditto.
6976 * script.cc: Update includes for String usage.
6977 (init_run_script): Update for String usage.
6978 (run): Ditto.
6979 (run_script): Ditto.
6980 (try_run_script): Ditto.
6981 * script.h: Update includes for String usage.
6982 (run_script): Update for String usage.
6983 (try_run_script): Ditto.
6984 * site.cc site_list): Ditto.
6985 (all_site_list): Ditto.
6986 (other_url): Eliminate.
6987 (site_list_type::init): Update for String usage.
6988 (site_list_type::site_list_type): Ditto.
6989 (get_site_list): Ditto.
6990 (get_saved_sites): Ditto.
6991 (do_download_site_info_thread): Ditto.
6992 (SitePage::OnNext): Ditto.
6993 (SitePage::OnActivate): Ditto.
6994 (SitePage::PopulateListBox): Ditto.
6995 (SitePage::OnMessageCmd): Handle empty url's.
6996 * site.h: Update includes for String usage.
6997 (site_list_type::site_list_type): Update for String usage.
6998 (site_list_type::init): Ditto.
6999 (site_list_type::~site_list_type): Ditto.
7000 (site_list_type::url): Ditto.
7001 (site_list_type::displayed_url): Ditto.
7002 (site_list_type::key): Ditto.
7003 * source.cc (SourcePage::OnDeactivate): Ditto.
7004 * state.h: Update includes for String usage.
7005 (local_dir): Update for String usage.
7006 (trust_level): Remove.
7007 * version.cc: Update includes for String usage.
7008 (canonicalize_version): Update for String usage.
7009 * version.h: Update includes for String usage.
7010 (canonicalize_version): Update for String usage.
7011
08233ec7
CF
70122002-02-15 Christopher Faylor <cgf@redhat.com>
7013
7014 * filemanip.c (parse_filename): Revert previous change.
7015
94dffbdd
CF
70162002-02-14 Christopher Faylor <cgf@redhat.com>
7017
7018 * filemanip.c (parse_filename): Don't treat '_' as a version number
7019 introducer.
7020
cef493d7
CF
70212002-01-29 Christopher Faylor <cgf@redhat.com>
7022
7023 * configure: Regenerate.
7024
57219197
RC
70252002-01-27 Robert Collins <rbtcollins@hotmail.com>
7026
94dffbdd
CF
7027 * res.rc (IDD_LOCAL_DIR): Fix typo reported by Rene
7028 <Hoeck@extern.lrz-muenchen.de>
57219197 7029
cc7493c3
RC
70302002-01-27 Robert Collins <rbtcollins@hotmail.com>
7031
7032 * README: Update Todo's.
7033 * list.h: Run indent.
7034 (list): New methods checksize and insert to reduce code duplication.
7035 (list::registerbykey): Use them.
7036 (list::registerbyobject): Ditto.
94dffbdd
CF
7037 (list::removebyindex): Copy each object individually - safe for non
7038 trivial objects.
cc7493c3
RC
7039 (list::checksize): Implement.
7040 (list::insert): Implement.
7041
a900d1fa
RC
70422002-01-27 Robert Collins <rbtcollins@hotmail.com>
7043
7044 * Makefile.in: Remove the dlmalloc object by default.
94dffbdd
CF
7045 * install.cc (do_install_thread): Remove the mallinfo call for 'working
7046 around' the crashing issue.
a900d1fa 7047 * package_db.h: Include <string.h> - it's needed to parse this.
94dffbdd 7048 * package_source.cc (site::site): Move here from the header file.
a900d1fa
RC
7049 * package_source.h (site): Stop the constructor being inlinable.
7050
9835fb4a
RC
70512002-01-26 Robert Collins <rbtcollins@hotmail.com>
7052
7053 * filemanip.cc (find_tar_ext): Add a descriptive comment.
7054
70552002-01-25 Michael A Chase <mchase@ix.netcom.com>
7056
7057 * filemanip.cc (find_tar_ext): Clean up tests for .tar.gz and .tar.
7058 * fromcwd.cc (do_fromcwd): Expand FIXME comment in source file check.
94dffbdd
CF
7059 * install.cc (install_one_source): Add space between words in log()
7060 call.
cef493d7 7061
77ba23d8
RC
70622002-01-22 Robert Collins <rbtcollins@hotmail.com>
7063
94dffbdd
CF
7064 * log.cc (exit_setup): When saving to the download dir, explicity
7065 specify the path.
77ba23d8 7066
6dc75764
RC
70672002-01-22 Robert Collins <rbtcollins@hotmail.com>
7068
94dffbdd
CF
7069 * archive.cc (extract_file): Separate out the prefix and the URL
7070 scheme.
6dc75764 7071 * archive.h (archive::extract_file): Ditto.
94dffbdd
CF
7072 * install.cc (install_one_source): Ditto. Use the new
7073 archive::extract_file syntax.
6dc75764
RC
7074 (replace_one): Use the new syntax.
7075 (io_stream.cc): Add some log info for links.
7076
7e8fc33c
RC
70772002-01-22 Robert Collins <rbtcollins@hotmail.com>
7078
7079 * PickCategoryLine.cc (PickCategoryLine::actiontext): Remove.
7080 (PickCategoryLine::paint): Use the new action method.
7081 (PickCategoryLine::click): Set the action for all children.
7082 (PickCategoryLine::set_action): New method.
7083 * PickCategoryLine.h (PickCategoryLine::-actions): Remove.
7084 (PickCategoryLine::current_default): Use packagemeta _actions class.
94dffbdd
CF
7085 * PickLine.h (PickLine::set_action): New abstract method that requires
7086 including package_meta.h.
7e8fc33c
RC
7087 * PickPackageLine.cc (PickPackageLine::set_action): New method.
7088 * PickPackageLine.h (PickPackageLine::set_action): Declare this.
7089 * list.h (getbykey): A const correctness fix.
7090 * package_meta.cc: Run indent.
7091 (packagemeta::Default_action): New const.
7092 (packagemeta::Install_action): Ditto.
7093 (packagemeta::Reinstall_action): Ditto.
7094 (packagemeta::Uninstall_action): Ditto.
7095 (packagemeta::_actions::caption): New method.
7096 (packagemeta::_actions::operator++): Ditto.
7097 (packagemeta::set_action): New overload.
7098 * package_meta.h (packagemeta::_actions): New class.
7099 (packagemeta::set_action): Declare this.
7100
2c9254b6
RC
71012002-01-22 Robert Collins <rbtcollins@hotmail.com>
7102
7103 * Makefile.in (OBJS): Remove supp.o - it appears accidental.
7104 * choose.cc: Don't define alloca anymore, it's done in win32.h
7105
97647369
RC
71062002-01-22 Robert Collins <rbtcollins@hotmail.com>
7107
7108 * PickPackageLine.cc: New file.
7109 * PickPackageLine.h: New file.
7110 * PickLine.cc: New file.
7111 * PickLine.h: New file.
7112 * PickCategoryLine.cc: New file.
7113 * PickCategoryLine.h: New file.
7114 * PickView.cc: New file.
7115 * PickView.h: New file.
7116 * Makefile.in: Add new objects to setup.exe.
7117 Backout -fno-exceptions option.
7118 * choose.cc: Include PickView.h.
7119 Remove view related defines and static variables.
7120 (_pkg_headers): Moved to PickView.cc.
7121 (_cat_headers): Ditto.
7122 (view::views::Unknown): Ditto.
7123 (view::views::PackageFull):
7124 (view::views::Package):
7125 (view::views::Category):
7126 (pkgtrustp): Moved to package_meta.cc.
7127 (add_required): Moved to package_meta.cc.
7128 (pick_category_line::empty): Moved to PickCategoryLine.cc
7129 (paint): Adjust for moved static variables.
7130 (view::scroll): Moved to PickView.cc.
7131 (list_vscroll): Adjust for moved static variables.
7132 (list_hscroll): Ditto.
7133 (list_click): Ditto.
7134 (note_width): Moved to PickView.cc.
7135 (view::view): Ditto.
7136 (view::set_view_mode): Ditto.
7137 (view::mode_caption): Ditto.
7138 (view::views::caption): Ditto.
7139 (view::set_headers): Ditto.
7140 (DoInsertItem): Ditto.
7141 (view::init_headers): Ditto.
7142 (view::insert_pkg): Ditto.
7143 (view::insert_category): Ditto.
7144 (view::clear_view): Ditto.
7145 (view::views::operator++): Ditto.
7146 (view::click): Ditto.
7147 (default_trust): Adjust for moved statics.
7148 (pick_pkg_line::paint): Moved to PickPackageLine.cc.
7149 (pick_pkg_line::click): Ditto.
7150 (pick_category_line::actiontext): Moved to PickCategoryLine.cc
7151 (pick_category_line::paint): Ditto.
7152 (pick_category_line::click): Ditto.
7153 (set_view_mode): Adjust for moved statics.
7154 (create_listview): Ditto.
58b12a06
MB
7155 * choose.h: Remove Category and packagemeta forward defines -
7156 not needed.
97647369
RC
7157 Don't include unneeded headers list and package_meta.
7158 (_header): Move to PickView.h.
7159 (pick_line): Move to PickLine.h.
7160 (pick_pkg_line): Move to PickPackageLine.h.
7161 (pick_category_line): Move to PickCategoryLine.h.
7162 (view): Move to PickView.h.
7163 * ini.h (trusts): Move to package_meta.h.
7164 * package_meta.h (trusts): New enum.
7165 (packagemeta::set_requirements): New helper method.
7166 (packagemeta::trustp): Ditto.
7167
b566778e
CF
71682002-01-21 Christopher Faylor <cgf@redhat.com>
7169
7170 * choose.h (view): Move forward declaration of views into public area
7171 or g++ v3 will complain.
7172
f71e9756
CF
71732002-01-21 Christopher Faylor <cgf@redhat.com>
7174
7175 * Makefile.in (CXXFLAGS): Add -fno-exceptions.
7176 * win32.h (alloca): Define as __builtin_alloca.
7177 * io_stream_memory.cc: Add include file.
7178
e9440f0f
RC
71792002-01-21 Robert Collins <rbtcollins@hotmail.com>
7180
58b12a06
MB
7181 * archive_tar.cc (archive_tar::~archive_tar): Mark the stream as
7182 destroyed.
e9440f0f
RC
7183 * archive_tar_file.cc (archive_tar_file::~archive_tar_file): Ditto.
7184 * compress.cc (compress::~compress): Be less verbose.
7185 * compress_bz.cc (compress_bz::~compress_bz): Ditto.
7186 Mark the stream as destroyed.
58b12a06
MB
7187 * compress_gz.cc (compress_gz::~compress_gz): Mark the stream as
7188 destroyed.
7189 * io_stream.cc (io_stream::~io_stream): Only warn when the stream is not
7190 marked as destroyed.
cef493d7 7191 * io_stream_cygfile.cc (io_stream_cygfile::~io_stream_cygfile): Mark the
e9440f0f
RC
7192 stream as destroyed.
7193 * io_stream_file.cc (io_stream_file::~io_stream_file): Ditto.
7194 * io_stream_memory.cc (io_stream_memory::~io_stream_memory): Ditto.
cef493d7 7195
5e0464a1
RC
71962002-01-21 Robert Collins <rbtcollins@hotmail.com>
7197
7198 * Makefile.in (CFLAGS): Allow customisable malloc debug flags.
7199 (OBJS): Link in malloc objects.
7200 * category.cc (category): Use new char, not strdup.
7201 * choose.cc (pick_pkg_line::paint): Allow for the regionsize to shrink.
7202 (do_choose): Use new char, not malloc.
7203 * concat.cc (vconcat): Ditto.
7204 * cygpackage.cc (cygpackage): Use new char, not strdup.
7205 (set_canonical_version): Ditto.
7206 (cygpackage::destroy): Use delete[], not free.
7207 * desktop.cc (uexists): Ditto.
7208 * dialog.cc (egest): Use new char, not strdup.
7209 * dlmalloc.c: New file - Doug Lea's malloc 2.7.0
7210 * hash.cc (hash::hash): Use delete instead of free.
7211 (hash::add): Use new char, not strdup.
7212 * ini.cc (do_remote_ini): Use delete[] not free.
7213 * inilex.l: Use new char, not strdup.
7214 (ini_init): Ditto.
7215 * iniparse.y: Ditto.
7216 Use a local package_db rather than a static one.
7217 * install.cc (struct mallinfo): Workaround an apparent dlmalloc bug.
7218 (do_install_thread): Call mallinfo to force a consistency check. Appears
7219 to fix a 'inuse' error in -DDEBUG builds.
7220 Use delete[] for strings.
58b12a06
MB
7221 * io_stream_cygfile.cc (io_stream_cygfile::io_stream_cygfile): Use new
7222 char, not strdup.
5e0464a1
RC
7223 (io_stream_cygfile::~io_stream_cygfile): Use delete[], not free.
7224 (io_stream_cygfile::remove): Use new char, not strdup.
58b12a06
MB
7225 * io_stream_file.cc (io_stream_file::io_stream_file): Use new char, not
7226 strdup.
5e0464a1
RC
7227 (io_stream_file::io_stream_file): Use delete[], not free.
7228 (io_stream_file::remove): Use new char, not strdup.
7229 * io_stream_memory.cc (memblock::~memblock): Use delete[], not free.
7230 * io_stream_memory.h (memblock): Use new char, not malloc.
7231 * localdir.cc (LocalDirPage::OnInit): Use new char, not strdup.
7232 * main.cc (WinMain): Use new char, not strdup.
7233 * mount.cc (find2): Use new char, not malloc.
7234 (read_mounts): Ditto.
7235 (cygpath): Use new char, not strdup.
7236 * netio.cc (NetIO::~NetIO): Use delete[], not free.
7237 (NetIO::set_url): Use new char, not strdup.
7238 (NetIO::get_ftp_auth): Use delete[], not free.
7239 * nio-ftp.cc (NetIO_FTP::NetIO_FTP): Ditto.
7240 Use new char instead of strdup.
7241 * nio-http.cc (base64_encode): Use new char, not malloc.
7242 * package_meta.cc (hash::add_subdirs): Use new char instead of strdup.
7243 * package_source.h (~ packagesource): Use delete[] instead of delete.
7244 * port.h (strdup): Deprecate the use of strdup.
7245 * rfc1738.cc (rfc1738_do_escape): Use new char, not calloc.
7246 * script.cc (init_run_script): Us delete[], not free.
7247 (run_script): Ditto.
7248 * simpsock.cc (SimpleSocket::fill): Use new char, not malloc.
7249 (SimpleSocket::invalidate): Use delete[], not free.
7250 * site.cc (site_list_type::init): Use new char instead of strdup.
7251 * site.h (~site_list_type): Use delete[], not free.
7252
ad3c7385
RC
72532002-01-20 Robert Collins <rbtcollins@hotmail.com>
7254
7255 * Makefile.in (OBJS): Add win32.o - win32 support functions.
7256 * README: Update todos.
58b12a06
MB
7257 * archive.cc (extract_file): Support a suffix for appending to extracted
7258 files.
ad3c7385
RC
7259 * archive.h: Ditto.
7260 * choose.cc (set_view_mode): Use the new view::views class.
7261 (view::views::Unknown): New static for defaulting view::views variables.
7262 (view::views::PackageFull): New static for the current view.
7263 (view::views::Package): Ditto.
7264 (view::views::Category): Ditto.
7265 (topbucket::paint): Remove.
7266 (topbucket::empty): Rename to pick_category_line::empty.
7267 (topbucket::~topbucket): Remove.
7268 (paint): Use the new view::views class.
7269 Don't paint 'all' as a category when showing package categoies.
7270 (pick_category_line::actiontext): New method.
58b12a06
MB
7271 (pick_category_line::paint): Make showing the category optional, and
7272 show the 'category action'.
ad3c7385 7273 (pick_category_line::click): Make showing the category optional, and
58b12a06
MB
7274 differentiate between the name being clicked, and the action
7275 description.
ad3c7385
RC
7276 (view::view): Use the new view::views class.
7277 (view::set_view_mode): Ditto.
7278 (view::mode_caption): Ditto.
7279 (view::views::caption): New method.
7280 (view::set_headers): Use the new view::views class.
7281 (view::clear_view): Ditto.
cef493d7 7282 (viewsplusplus): Replaced by
ad3c7385
RC
7283 (view::views::operator++): New operator.
7284 (set_view_mode): Use the new view::views class.
7285 (create_listview): Ditto.
7286 (dialog_cmd): Ditto.
7287 * choose.h (actions): Remove.
7288 (views): Remove.
7289 (pick_line): Add a new convenience constructor.
7290 (top_bucket): Remove.
7291 (pick_category_line): Reparent under pick_line, and adsorb top_bucket.
7292 (view::views): New class.
7293 * ini.h: Don't include choose.h
7294 (is_download_action): Remove.
7295 (is_upgrade_action): Remove.
7296 (is_uninstall_action): Remove.
7297 (is_full_action): Remove.
7298 * install.cc (num_replacements): New static.
7299 (rebootneeded): Ditto.
7300 (replace_one): Handle upgrades separate from removal or new installs.
7301 (install_one_source): Handle in use files.
7302 (install_one): Don't repeat upgrades.
7303 (do_install_thread): Initialize new statics.
7304 Order actions as uninstall, replace, install.
7305 Warn about rebooting if needed.
7306 * res.rc (IDS_REBOOT_REQUIRED): New string.
7307 * resource.h (IDS_REBOOT_REQUIRED): Give value.
7308 * win32.h: Declare class Win32, and update copyright and intent message.
7309 * win32.cc: New file.
7310
edef4f57
CV
73112002-01-15 Corinna Vinschen <corinna@vinschen.de>
7312
7313 * io_stream.cc (io_stream::gets): Eliminate trailing new line chars.
7314 * package_meta.cc (packagemeta::uninstall): Check for additional
7315 Windows shortcut. Unset R/O file attribute before trying to delete
7316 file.
7317
21f325d7
RC
73182002-01-09 Robert Collins <rbtcollins@hotmail.com>
7319
58b12a06
MB
7320 * choose.cc (pkgtrustp): Fall back to installed if a package is not
7321 present in the current trust level. For prev, fall back via curr.
21f325d7
RC
7322 (set_existence): Allow sources with no sites, but cached files to be
7323 kept.
7324 (pick_category_line::paint): Start drawing clickable categories.
7325 * fromcwd.cc (found_file): Reinstate local file scanning.
7326
858f100d
RC
73272002-01-07 Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>
7328
cef493d7 7329 * fromcwd.cc: Run indent.
858f100d
RC
7330 (do_fromcwd): Reverse sense of comment. Set next_dialog
7331 to IDD_CHOOSER instead of IDD_CHOOSE.
7332 * ini.cc (find_routine): Remove "/" from "/setup.ini".
cef493d7 7333
d343da15
RC
73342001-01-07 Robert Collins <rbtcollins@hotmail.com>
7335
7336 * category.cc (Categorycmp): Add a const safe version.
7337 * category.h (Categorycmp): Add a const safe version.
7338 (Category): Add operator ==.
7339 * choose.cc (fill_missing_category): Add every package to "All".
58b12a06
MB
7340 (pick_category_line::paint): Add support for hidden labels, and a tree
7341 depth.
d343da15
RC
7342 (pick_category_line::click): Ditto.
7343 (view::view): Pass in a top level category to use.
7344 (view::insert_pkg): Special case - skip category "All".
7345 (view::insert_category): Ditto.
7346 (view::clear_view): Set the contents label state.
7347 (create_listview): Pass in a top level category to view().
7348 * choose.h (topbucket): Make bucket available to derived classes.
7349 (pick_category_line): Add support for hidden labels, and a tree depth.
7350 Remove our second copy of bucket.
7351 (view): Pass in a top level category to the constructor.
7352 Use pick_category_line to allow three level display.
7353
bcf20115
RC
73542001-01-06 Robert Collins <rbtcollins@hotmail.com>
7355
7356 * cygpackage.h (cygpackage): Make set_[s|l]desc virtual.
7357 * iniparse.y (add_correct_version): Copy descriptions across.
58b12a06
MB
7358 * package_meta.cc (SDesc): Iterate through versions, return the first
7359 with a description.
bcf20115
RC
7360 * package_version.h (packageversion): Add new virtuals set_[l|s]desc.
7361
bc78a6d5
RC
73622001-01-04 Robert Collins <rbtcollins@hotmail.com>
7363
7364 * script.cc (run_script): Change cygpath:// to cygfile://.
7365 * install.cc (do_install_thread): Fix off-by-one errors.
7366
4f4e55c2
RC
73672001-01-04 Robert Collins <rbtcollins@hotmail.com>
7368
7369 * package_db.cc (packagedb::flush): Fix an off-by-one error.
7370
8e9aa511
RC
73712002-01-04 Jan Nieuwenhuizen <janneke@gnu.org>
7372
7373 * Makefile.in (realclean): more clean.
7374 (OBJS): Add script.o.
7375 * postinstall.cc (run_script_in_etc_postinstall): New function.
7376 (do_postinstall): Split off new funtion init_run_script ().
7377 (init_run_script):
7378 (run):
7379 (run_script): Move to script.cc. Replace some deprecated remove
7380 and move calls.
7381 * script.h:
7382 * script.cc: New file.
7383 * Forward port cygwin-20010707.jcn3.patch.
7384 * package_meta.cc (uninstall): Run pre- and postremove scripts.
7385 * install.cc: Typo fix.
7386 (do_install): Run script initialisation.
cef493d7 7387
b7301c43
RC
73882001-01-04 Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>
7389
7390 * cistring.cc: Run d2u.
7391 * cistring.h: Run d2u.
7392
7393 * desktop.cc (etc_profile): Remove "test -f ./.bashrc && . ./.bashrc"
7394 from the generated /etc/profile. Bash will source this file
7395 automatically, and having this here merely results in .bashrc being
7396 executed twice. Run d2u.
7397 * desktop.h: Run d2u.
7398
7399 * propsheet.cc: Run d2u.
7400 (PropSheetProc): New function. Add minimize box here instead of in
7401 PropertyPage::DialogProc.
7402 (PropSheet::Create): Change to use creation callback PropSheetProc.
7403 (DLGTEMPLATEEX): Add 'hidden' Windows struct definition.
7404
7405 * propsheet.h: Run indent, d2u.
7406 * proppage.h: Run indent, d2u.
7407
7408 * proppage.cc: Run d2u.
7409 (PropertyPage::DialogProc): Remove minimize-box-adding
7410 functionality. Remove commented-out "PropSheet_SetWizButtons" calls.
7411 Add support for calling virtual OnMessageCmd. Add setting of fonts in
7412 WM_INITDIALOG handler.
7413 (resource.h): New include for resource IDs.
7414
7415 * res.rc: Resize and rearrange property page dialog templates
7416 to bring them in line with "Microsoft's Backward Compatible Wizard 97"
7417 specification. Run d2u.
7418 (IDD_SITE): Add an edit control and an "Add" button in order to
7419 combine the IDD_SITE and IDD_OTHER_URL functionality onto one page.
7420 (IDD_OTHER_URL): Remove dialog template.
7421 (IDD_DLSTATUS): Remove dialog template.
7422
7423 * site.cc: Run d2u.
7424 (SitePage::OnBack): Remove NEXT() macro invocation.
7425 (SitePage::OnActivate): New member function.
7426 (load_dialog): Remove. Functionality subsumed into
7427 SitePage::OnActivate.
7428 (save_dialog): Change to support both list and user URLs. Remove
7429 OTHER_IDX and mirror_idx logic.
7430 (SitePage::PopulateListBox): New member function.
7431 (SitePage::CheckControlsAndDisableAccordingly): New member function.
7432 (SitePage::OnMessageCmd): New override.
7433 (check_if_enable_next): Remove.
7434 (dialog_cmd): Remove.
7435 (do_download_site_info_thread): Remove calls to NEXT() macro.
7436 (SitePage::Create): Call the single-param PropertyPage::Create
7437 overload.
7438 (other_url): New static taken from other.cc.
7439 (SitePage::OnNext): Remove mirror_idx logic.
7440 (SitePage::OnInit): Remove "Other URL" entry from list box. Remove
7441 list box populating code, now handled in SitePage::PopulateListBox.
7442 (mirror_idx, NO_IDX, OTHER_IDX): Remove.
7443 (save_site_url): Fix potential buffer overflow problem. Switched to
7444 TCHAR in grossly premature preparation for multilingual support.
7445 * site.h: Run d2u.
7446 (SitePage::OnActivate): New member function.
7447 (SitePage::CheckControlsAndDisableAccordingly) New member.
7448 (SitePage::OnMessageCmd): New override.
7449 (do_download_site_info_thread): Add MessageBox call on failure to
7450 download site list.
7451
7452 * splash.cc: Run d2u.
7453 (SplashPage::OnInit): Set the font for the title.
7454 * splash.h: Run d2u.
7455
7456 * threebar.cc: Run d2u.
7457 * threebar.h: Run d2u.
7458
7459 * window.h: Run d2u.
7460 (Window::IsButtonChecked): New member function declaration.
7461 (Window::OnMessageCmd): New member function.
7462 (Window::SetDlgItemFont): New member function declaration.
7463 (Window::MAXFONTS, Window::Fonts, Window::FontCounter): New data
7464 members.
7465 * window.cc: Run d2u.
7466 (Window::IsButtonChecked): New member function definition.
7467 (Window::SetDlgItemFont): New member function definition.
7468 (Window::Window): Add initialization for FontCounter.
7469 (Window::~Window): Delete any fonts we created.
7470
7471 * geturl.cc: Run d2u.
7472 (progress): Remove the "3" field width from the "%3d"
7473 percent-complete format indicator. Causes line to not start at
7474 beginning of text box, and does little to help with "jumping", since
7475 the "bytes downloaded so far" field is variable-width anyway. Change
7476 kb/s format field to "%03.1" to 0-pad the kb/s number in the event of
7477 painfully slow connections, or temporary slowdowns in faster
7478 connections should such more-instantaneous functionality become
7479 available.
7480
7481 * net.h: Run d2u.
7482 (NetPage::OnMessageCmd): New member function declaration.
7483 (NetPage::CheckIfEnableNext): New member function declaration.
7484 * net.cc: Run d2u.
7485 (NetPage::OnMessageCmd): New member function definition.
7486 (dialog_cmd): Remove, subsumed into NetPage::OnMessageCmd.
7487 (check_if_enable_next): Remove.
7488 (NetPage::CheckIfEnableNext): New member function, subsumes
7489 check_if_enable_next.
7490 (propsheet.h): Add include.
7491 (NetPage::Init): Add call to CheckIfEnableNext.
7492 (load_dialog): Remove call to check_if_enable_next.
7493 (NetPage::Create): Call single-template-ID-parameter overload of
7494 PropertyPage::Create instead of three-parameter one.
7495
7496 * Makefile.in (OBJS): Remove other.o.
7497 * other.cc: Remove file.
7498
df62e023
RC
74992002-01-01 Robert Collins <rbtcollins@hotmail.com>
7500
7501 * README: Update TODO's.
7502 * choose.cc (set_existence): Delete non installed packages with no
7503 mirrors.
7504 (fill_missing_category): Fix an off-by-one error.
cef493d7 7505 (default_trust): Ditto. Also delete any unused categories.
df62e023
RC
7506 (view::init_headers): Fix an off-by-one error.
7507 (set_view_mode): Ditto.
7508 (set_view_mode): Ditto.
7509 (create_listview): Ditto.
7510 (dialog_cmd): Ditto.
7511 (do_choose): Ditto.
7512 * io_stream.cc: Indent.
7513 * io_stream.h: Ditto.
7514 * package_db.cc: Ditto.
7515 * package_meta.h: Const correctness for SDesc ();
7516 * proppage.cc: Run d2u and indent.
7517 * propsheet.cc: Run d2u and indent.
7518 * window.cc: Run d2u and indent.
7519 * window.h: Run d2u and indent.
7520
cec57ee1
CF
75212001-12-28 Christopher Faylor <cgf@redhat.com>
7522
e98c531e 7523 * Makefile.in (iniparse.o): Accommodate newer bisons.
cec57ee1 7524
ab57ceaa
RC
75252001-12-23 Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>
7526
7527 * window.h (Window): New file, new class.
7528 * window.cc (Window): New file, new class.
7529
7530 * threebar.h (ThreeBarProgressPage): New file, new class.
7531 * threebar.cc (ThreeBarProgressPage): New file, new class.
7532
7533 * splash.h (SplashPage): New file, new class.
7534 * splash.cc (SplashPage): Replace file with implementation of new
7535 class.
7536
7537 * source.h (SourcePage): New file, new class.
7538 * source.cc: Run indent.
7539 (SourcePage): Add class implementation to this file.
7540 (do_source): Remove, functionality subsumed by SourcePage::Create()
7541 and SourcePage::OnDeactivate().
cef493d7 7542 (dialog_proc): Remove, functionality subsumed by
ab57ceaa
RC
7543 SourcePage::OnActivate().
7544
7545 * site.h: Run indent.
7546 (SitePage): Add class declaration.
7547 * site.cc: Run indent.
7548 (SitePage): Add class implementation.
7549 (do_download_site_info_thread): New function.
7550 (context): New var. Context info for do_download_site_info_thread().
7551 (do_download_site_info): New function.
7552 (SitePage::Create, SitePage::OnInit SitePage::OnNext)
7553 (SitePage::OnBack): SitePage class implementation..
7554 (dialog_cmd): Remove IDOK, ID_BACK, and IDCANCEL handlers, now handled
7555 by SitePage members.
7556 (dialog_proc): Remove, now handled by SitePage::OnInit and base class
7557 functionality.
7558 (do_site): Remove, now handled by do_download_site_info_thread() and
7559 SitePage::OnNext functionality.
7560 (get_site_list): Remove dismiss_url_status_dialog() call.
7561
7562 * root.h (RootPage): New file, new class.
7563 * root.cc: Run indent.
7564 (dialog_cmd): Pass parent HWND parameter to note(), yesno().
7565 (dialog_proc): Remove.
7566 (do_root): Remove
7567 (dialog_cmd): Remove IDOK, ID_BACK, and IDCANCEL clauses from switch.
7568 (RootPage::OnInit): New member function. Move get_root_dir() logic to
7569 here from do_root().
7570 (RootPage::Create): New member function.
cef493d7 7571 (RootPage::OnNext): New member function. Move IDOK logic from
ab57ceaa
RC
7572 dialog_cmd() to here.
7573 (RootPage::OnBack): New member function.
7574
7575 * propsheet.h (PropSheet): New file, new class.
7576 * propsheet.cc (PropSheet): New file, new class.
7577
7578 * proppage.h (PropertyPage): New file, new class.
7579 * proppage.cc (PropertyPage): New file, new class.
7580
7581 * postinstall.cc (do_postinstall): Add owner parameter.
7582
7583 * other.cc (do_other): Add owner parameter.
7584
7585 * nio-file.cc (NetIO::Purl): Pass NULL parent param to note().
cef493d7 7586 * nio-ftp.cc (NetIO_FTP::NetIO_FTP): Pass NULL parent param to
ab57ceaa 7587 get_ftp_auth().
cef493d7 7588 * nio-http.cc (retry_get): Pass NULL parent param to get_auth(),
ab57ceaa
RC
7589 get_proxy_auth(),
7590 and get_ftp_auth().
cef493d7 7591 * nio-ie5.cc (NetIO::_url): Pass NULL parent param to note(),
ab57ceaa
RC
7592 get_auth(), get_proxy_auth().
7593
7594 * netio.h (get_auth, get_proxy_auth, get_ftp_auth): Add owner param.
cef493d7 7595 * netio.cc (auth_common, NetIO::get_auth, NetIO::get_proxy_auth,
ab57ceaa
RC
7596 NetIO::get_ftp_auth)
7597 (auth_common): Add owner param. Pass owner param to DialogBox.
cef493d7 7598 (NetIO::get_auth, NetIO::get_proxy_auth, NetIO::get_ftp_auth): Pass
ab57ceaa
RC
7599 owner param to auth_common().
7600
7601 * net.h (NetPage): New file, new class.
7602 * net.cc: Run indent.
7603 (net.h, threebar.h): Add includes.
7604 (Progress): Add extern.
7605 (dialog_cmd): Remove IDOK, IDC_BACK, and IDCANCEL cases, now handled by
7606 property sheet logic. Saved temporarily for reference.
cef493d7 7607 (NetPage::Create, NetPage::OnInit, NetPage::OnDeactivate,
ab57ceaa
RC
7608 NetPage::OnNext, NetPage::OnBack):
7609 New implementation of NetPage class members.
7610 (do_net): Remove.
7611 (dialog_proc): Remove.
7612
7613 * msg.h (fatal, note, yesno): Add owner param.
7614 * msg.c (fatal, note, yesno, mbox): Add owner param.
7615 (mbox): Remove MB_TOPMOST from MessageBox call. Unnecessary and wrong
7616 now that we have a parent.
7617
7618 * main.cc: Run indent.
cef493d7 7619 (commctrl.h, proppage.h, propsheet.h, splash.h, source.h)
ab57ceaa
RC
7620 (localdir.h, net.h, site.h, choose.h, threebar.h, desktop.h): Include
7621 headers.
7622 (root_dialog_proc): extern into this file.
7623 (Progress): Progress dialog defined here, used in several other files.
7624 (WinMain): Instantiate and create Splash, Source, Root, LocalDir, Net,
7625 Site, Chooser, Desktop pages and MainWindow sheet. Call
7626 InitCommonControls() to make sure Windows is set up for our use of
7627 property sheets. Add pages to sheet.
7628 Call MainWindow.Create() to "DoModal". Remove main loop, that logic is
7629 now handled by the PropSheet class.
7630 (root.h): Add include.
7631
7632 * log.cc (log_save): Pass NULL parent to fatal().
7633 (exit_setup): Pass NULL parent to note().
7634
7635 * localdir.h (LocalDirPage): New file, new class.
7636 * localdir.cc: Run indent.
7637 (localdir.h): New include.
7638 (threebar.h): New include.
7639 (Progress): extern into this file.
7640 (LocalDirPage::Create, LocalDirPage::OnInit, LocalDirPage::OnActivate)
cef493d7 7641 (LocalDirPage::OnNext, LocalDirPage::OnBack): Implementation of
ab57ceaa
RC
7642 LocalDirPage.
7643 (LocalDirPage::OnNext): Move log() call from do_local_dir() to here.
7644 (dialog_cmd): Remove IDOK, ID_BACK, and IDCANCEL handlers.
7645 (do_local_dir): Remove.
7646 (dialog_proc): Remove.
7647 (cwd): Remove, not used by anything.
7648
7649 * install.cc: Run indent.
7650 (process.h, threebar.h): New includes.
7651 (Progress): extern into this file.
7652 (ins_dialog, ins_action, ins_pkgname, ins_filename, ins_pprogress)
7653 (ins_iprogress, ins_diskfull, init_event): Remove, now handled by
7654 ThreeBarProgressPage.
cef493d7 7655 (dialog_cmd, dialog_proc, dialog): Removed, handled in
ab57ceaa 7656 ThreeBarProgressPage.
cef493d7
CF
7657 (init_dialog): Remove all mention of the above ins_* handles. Now
7658 handled in ThreeBarProgressPage. Altered SetWindowText()s to call
ab57ceaa
RC
7659 ThreeBarProgressPage instance Progress directly.
7660 (progress): Alter bar update logic to call ThreeBarProgressPage
7661 instance Progress directly.
7662 (uninstall_one): Alter SetWindowText()s to call ThreeBarProgressPage
7663 instance Progress directly.
cef493d7 7664 (install_one_source): Alter SetWindowText()s to call
ab57ceaa
RC
7665 ThreeBarProgressPage
7666 instance Progress directly. Pass NULL parent to note().
cef493d7 7667 (do_install_thread): Rename from do_install(), added owner param.
ab57ceaa
RC
7668 Alter SetWindowText()s to call ThreeBarProgressPage instance Progress
7669 directly.
7670 Remove dismiss_url_status_dialog() call, no longer necessary. Remove
cef493d7 7671 ShowWindow(<hide>) call, also unnecessary now. Pass owner handle to
ab57ceaa
RC
7672 fatal().
7673 (do_install_reflector): New function.
7674 (do_install): New function.
7675
7676 * ini.cc (process.h, threebar.h): New includes.
7677 (Progress): externed into this file.
7678 (find_routine): Pass NULL parent to note().
7679 (do_local_ini): Add owner param.
cef493d7 7680 (do_remote_ini): Add owner param. Pass owner to get_url_to_membuf()
ab57ceaa
RC
7681 and note(). Remove call to dismiss_url_status_dialog().
7682 (do_ini_thread): Rename from do_ini(). Add owner param. Pass owner to
cef493d7 7683 do_local_ini(), do_remote_ini(), yesno(), and note(). Set next_dialog
ab57ceaa
RC
7684 to IDD_CHOOSER on exit.
7685 (do_ini_thread_reflector): New function.
7686 (context): New var. Context for do_ini_thread.
7687 (do_ini): New function.
7688
7689 * geturl.h (get_url_to_membuf, get_url_to_string, get_url_to_file): Add
7690 owner param.
cef493d7 7691 * geturl.cc (gw_dialog, gw_url, gw_rate, gw_progress, gw_pprogress,
ab57ceaa 7692 gw_iprogress)
cef493d7 7693 (gw_progress_text, gw_pprogress_text, gw_iprogress_text, init_event):
ab57ceaa
RC
7694 Removed.
7695 (threebar.h): New include.
7696 (Progress): externed into this file.
cef493d7 7697 (dialog_cmd, dialog_proc, dialog): Removed, handled by
ab57ceaa 7698 ThreeBarProgressPage now.
cef493d7 7699 (init_dialog): Remove "if (gw_dialog == 0)" clause. Alter
ab57ceaa 7700 SetWindowText()s
cef493d7 7701 and bar setting SendMessage()s to call ThreeBarProgressPage instance
ab57ceaa
RC
7702 Progress directly. Remove "one bar only" logic, this is now handled
7703 explicitly in the ThreeBarProgressPage class.
cef493d7 7704 (progress): Altered bar and text update logic to call
ab57ceaa
RC
7705 ThreeBarProgressPage instance Progress directly. Changed kbps
7706 calculation to floating point and now print out a single decimal
7707 place.
7708 (get_url_to_membuf): Add owner param. Pass it to init_dialog.
7709 (get_url_to_string): Add owner param. Pass it to get_url_to_membuf.
cef493d7 7710 (get_url_to_file): Add owner param. Pass it to init_dialog. Alter bar
ab57ceaa
RC
7711 update logic to call ThreeBarProgressPage instance Progress directly.
7712 (dismiss_url_status_dialog): Remove.
7713
7714 * fromcwd.cc (do_fromcwd): Add owner param. Initialize found_ini to
7715 false, was true.
7716
7717 * download.cc: Run indent.
7718 (process.h, threebar.h): New includes.
7719 (Progress): externed into this file.
7720 (download_one): Add owner param. Pass it to get_url_to_file().
7721 (do_download_thread): Renamed from do_download. Add owner param. When
7722 calculating total_download_bytes, take binpicked and srcpicked into
7723 account. Remove call to dismiss_url_status_dialog(), no longer needed.
7724 Pass owner handle to download_one() and yesno().
7725 (do_download_reflector, do_download): New functions.
7726 (context): New var. Context for do_download_thread().
7727
7728 * dialog.h (D(x)): Add owner param.
7729
7730 * desktop.h (DesktopSetupPage): New file, new class.
7731 * desktop.cc: Run indent.
7732 (desktop.h): Add include.
cef493d7 7733 (dialog_proc, do_desktop): Remove, now handled in
ab57ceaa
RC
7734 DesktopSetupPage::OnInit().
7735 (dialog_cmd): Remove IDOK, IDC_BACK, and IDCANCEL cases, handled in
7736 DesktopSetupPage::OnFinish(), DesktopSetupPage::OnBack(), and PropSheet
7737 resp.
7738 (DesktopSetupPage::Create, DesktopSetupPage::OnInit)
7739 (DesktopSetupPage::OnBack, DesktopSetupPage::OnFinish): Implementation
7740 of DesktopSetupPage.
7741
7742 * cistring.h: New file, new class.
7743 * cistring.cc: New file, new class.
7744
7745 * choose.h: Run indent.
7746 (Chooser): New class declaration.
7747 * choose.cc: Run indent.
cef493d7 7748 (do_choose): Add owner param. Pass it to DialogBox() and
ab57ceaa
RC
7749 fatal().
7750 (Chooser): New class implementation.
7751
7752 * res.rc (IDS_VERSION_INFO): New string.
7753 (IDD_SOURCE, IDD_LOCAL_DIR, IDD_ROOT, IDD_SITE, IDD_OTHER_URL)
7754 (IDD_DLSTATUS, IDD_INSTATUS, IDD_SPLASH, IDD_CHOOSE, IDD_DESKTOP):
7755 Change WS_POPUP to WS_CHILD. Numerous positioning/size changes
7756 throughout.
7757 (IDD_CHOOSE): Give template the WS_EX_CONTROLPARENT style to enable
7758 TAB control navigation etc. Give the controls a reasonable tab order.
7759 Grouped radio buttons. Something's still not right, can't tab away
7760 from back/next/cancel group reliably.
7761 * resource.h (IDD_CHOOSER): New dialog ID.
7762
7763 * Makefile.in (OBJS): Add cistring.o, proppage.o, propsheet.o,
7764 threebar.o, and window.o.
7765
cc41a057
RC
77662001-12-21 Robert Collins <rbtcollins@hotmail.com>
7767
58b12a06
MB
7768 * choose.cc (listview_proc): Update the scrollbar when the headers are
7769 dragged.
cc41a057
RC
7770 (pick_pkg_line::paint): Clip columns to prevent overlap.
7771
cbfc4215
RC
77722001-12-20 Robert Collins <rbtcollins@hotmail.com>
7773
7774 * Makefile.in: Add libcomctl32.a for setup.exe.
7775 * archive.h (archive): Prevent non-child direct creation of the class.
58b12a06
MB
7776 * archive_tar.h (archive_tar): Prevent inaccurate synthetic copy and
7777 assignment.
cbfc4215
RC
7778 * choose.cc: Include commctrl for the choose header.
7779 (NEW_COL_SIZE_SLOP): Define without magic numbers.
7780 (pkgtrustp): Convert to function.
7781 (set_action): Remove.
cef493d7 7782 (add_required, fill_missing_category,default_trust): Use list syntax for
cbfc4215
RC
7783 package list.
7784 Use new set_action.
7785 (choose_caption): Remove.
7786 (topbucket::paint): New method.
7787 (topbucket::empty): Ditto.
7788 (topbucket::click): Ditto.
7789 (topbucket::~topbucket): Ditto.
7790 (paint): Remove i,ii and p as they are obsolete.
7791 Remove header drawing code.
7792 Use new chooser method to paint the chooser.
7793 Use new chooser itemcount method.
7794 (scroll_common): Rename to view::scroll.
7795 Scroll the header window separately.
58b12a06
MB
7796 (list_vscroll, list_hscroll, list_click): Update for new chooser
7797 methods.
cbfc4215
RC
7798 (listview_proc): Look for header messages.
7799 (note_width): Accept stringless calls.
7800 (pick_line::set_line): Remove.
7801 (pick_line::paint): Remove.
58b12a06
MB
7802 (pick_pkg_line::paint): Paint this one line, using the header column
7803 widths.
7804 (pick_category_line::paint): Paint this category, and anything in the
7805 bucket.
cbfc4215
RC
7806 (pick_line::click): Remove.
7807 (pick_pkg_line::click): Handle a click.
7808 (pick_category_line::click): Handle a click.
7809 (_view): Rename all to view.
7810 (view::view): Initialise the control contents.
7811 (view::set_headers): Work with the header control.
7812 (view::init_headers): Use list syntax for package list.
7813 Rearrange the width logic a little.
7814 (view::insert_pkg): Update to use the hierarchy.
7815 (view::insert_category): Ditto.
7816 (view::insert_at, view::insert_under): Remove.
7817 (view::clear_view): Update to use the hierarchy.
7818 (view::click): Update to use the hierarchy.
7819 (set_view_mode): Use list syntax for package list.
7820 Update for new chooser methods.
7821 (DoInsertItem): New helper function. (Needs a home somewhere).
58b12a06
MB
7822 (create_listview): Remove choose control code and use the constructor
7823 instead.
cbfc4215
RC
7824 (dialog_cmd,scan2,do_choose): Use list syntax for package list.
7825 * choose.h: Include newly required headers list and package_meta.
7826 (_voew): Rename to view.
7827 (pick_line): Convert to an ABC.
7828 (pick_pkg_line): New class.
7829 (pick_catgory_line): New class.
7830 (topbucket): New class.
7831 (view::scroll): New method created from listview_scroll function.
7832 * desktop.cc (make_passwd_group): Use list syntax for package list.
7833 * download.cc (do_download): Use list syntax for package list.
7834 * fromcwd.cc (found_file): Use list syntax for package list.
7835 * iniparse.y (pacakges): Use list syntax for package list.
7836 * install.cc (uninstall_one): Use list syntax for package list.
7837 (do_install): Use list syntax for package list.
58b12a06
MB
7838 * io_stream.h (io_stream): Prevent non-child direct creation of the
7839 class.
cbfc4215
RC
7840 Prevent inaccurate synthetic copy and assignment.
7841 * list.h: Include required header stdlib.
7842 Work on const correctness.
7843 * package_db.cc (packagedb::getpackagebyname): Remove.
7844 (packagedb::packagedb): Remove custom list code, and make db a local.
7845 (packagedb::getfirstpackage): Remove.
7846 (packagedb::getnextpackage): Remove.
7847 (packagedb::addpackage): Remove.
7848 (flush): Remove custom list code.
7849 (packagedb::registerpackage): Remove.
7850 (packagedb::packages): New static member.
7851 (packagedb::task): New static member.
7852 * package_db.h (PackageDBActions): New enum.
7853 (packagedb): Remove getfirstpackage, getnextpackage, getpackagebyname,
7854 addpackage, registerpackage, packages, packagecount, curr_package, db.
7855 Add packages, task.
7856 * pacakge_meta.cc: Include package_db.h.
7857 (packagemeta::action_caption): New method.
7858 (packagemeta::set_action): New method.
7859 * package_meta.h (CategoryPackage): Initialise key.
7860 (packagemeta): Initialise key.
7861 Add set_action and action_caption methods.
7862 Prevent inaccurate synthetic copy and assignment.
7863 * resource.h (IDC_CHOOSE_LISTHEADER): New ID.
7864 * source.cc: Include package_db for db manipulation.
7865 (save_dialog): Set the db task.
58b12a06
MB
7866 * win32.h: Tell the w32 include headers what IE version to
7867 expect/require.
cbfc4215 7868
cd8e5750
RC
78692001-12-06 Robert Collins <rbtcollins@hotmail.com>
7870
7871 * README: Wishlist updates.
7872
5519d243
RC
78732001-12-04 Robert Collins <rbtcollins@hotmail.com>
7874
7875 * package_db.cc (getnextpackage): Don't overrun the array.
7876
de6a1a64
RC
78772001-12-04 Robert Collins <rbtcollins@hotmail.com>
7878
7879 * Makefile.in (OBJS): Add setup_version.o.
7880 (version.c): Rename to setup_version.
7881 * choose.cc (set_action): Prevent NULL pointer dereference.
7882 (package_sort): Remove.
7883 * fromcwd.cc (canonicalize_version): Moved to version.cc.
58b12a06
MB
7884 (check_ini): New function for use with find to see if there is a cached
7885 setup.ini.
de6a1a64
RC
7886 (do_fromcwd): Check for a cached setup.ini from any mirror site.
7887 * ini.cc (find_routine): New function, for finding cached setup.ini's.
7888 (do_local_ini): New function, drives parsing of local ini's.
58b12a06
MB
7889 (do_remote_ini): New function, drives parsing and caching of remote
7890 ini's.
de6a1a64
RC
7891 (do_ini): Move guts to do_remote_ini and do_local_ini.
7892 * list.h (removebyindex): New method.
7893 * other.cc (save_dialog): Use new site_list and all_site_list to add the
7894 new site to the site picklist.
7895 (dialog_cmd): Only save the dialog when exiting the dialog.
7896 * res.rc (IDD_SITE): Make IDC_URL_LIST a multiple-selection control.
7897 * site.cc (site_list_type): Move to site.h
7898 (site_list): New global, sites chosen by the user.
7899 (all_site_list): New global, all potential sites.
58b12a06
MB
7900 (site_list_type::init): New method, parses a mirror.lst URL string into
7901 a site_list_type object.
de6a1a64
RC
7902 (site_list_type::site_list_type): New method.
7903 (check_if_enable_next): Examine the control, not a local variable.
7904 (load_dialog): Select all the user chosen sites by default.
cef493d7 7905 (save_dialog): Adjust for multiple selection semantics.
de6a1a64 7906 (save_site_url): Save all user chosen sites.
58b12a06
MB
7907 (dialog_cmd): Don't save the dialog when the listbox recieves a message
7908 - thats not needed.
de6a1a64
RC
7909 Remove obsolete other_url reference.
7910 (dialog_proc): Use all_site_list instead of site_list.
7911 (site_sort): Remove.
7912 (get_site_list): Remove malloc use - use list template instead.
7913 Move site_list_type initialisation to site_list_type::init().
7914 (get_initial_list_idx): Renamed to ...
7915 (get_saved_sites): this. Also read in multiple sites to the site_list.
7916 (do_site): Use all_site_list not site_list.
7917 Log all chosen sites.
7918 * site.h: New file, defines site related class, functions and variables.
7919 * state.h: Add comment about use of state.h
7920 (mirror_site): Remove.
7921 (other_url): Remove.
7922 (MIRROR_SITE): Remove.
7923 * version.cc: New file, for version-handling and related functions.
7924
341988b9
RC
79252001-12-02 Robert Collins <rbtcollins@hotmail.com>
7926
7927 * Makefile.in: Add filemanip.o to setup.
7928 * archive.cc (archive::extract_file): Use new io_stream method 'copy'.
7929 * archive_tar.h (archive_tar_file): Implement get_size virtual.
7930 (archive_tar): Ditto.
58b12a06
MB
7931 * choose.cc (set_action): Use [] operator instead of getnth - its more
7932 readable.
341988b9
RC
7933 (paint): Ditto.
7934 (_view::init_headers): Ditto.
7935 (_view::insert_pkg): Ditto.
7936 (set_view_mode): Ditto.
7937 (scan2): Ditto.
7938 (do_choose): Ditto.
7939 (base): Moved to filemanip.cc.
7940 (find_tar_ext): Ditto.
7941 (parse_filename): Ditto.
7942 (_Info::_Info): Remove.
7943 * compress_bz.h (compress_bz): Implement get_size virtual.
7944 * compress_gz.h (compress_gz): Implement get_size virtual.
58b12a06
MB
7945 * cygpackage.cc (cygpackage::destroy): Use array delete for char *
7946 objects.
341988b9 7947 * download.cc (get_file_size): Move to filemanip.cc.
58b12a06
MB
7948 (check_for_cached): Use [] operator instead of getnth - its more
7949 readable.
341988b9
RC
7950 (download_one): Ditto.
7951 * filemanip.cc: New file.
58b12a06
MB
7952 * geturl.cc (init_dialog): Make url a pointer to const as it is not
7953 modified.
7954 (get_url_to_membuf): New function - contains get_url_to_string worker
7955 code.
341988b9
RC
7956 (get_url_to_string): Becomes a trivial wrapper to get_url_to_membuf.
7957 * geturl.h: Declare new prototype.
7958 * ini.cc (do_ini): Use get_url_to_membuf and pass ini_init an io_stream.
7959 Tidy up the error code a little.
7960 * ini.h: Remove __cplusplus protection for ini_init.
7961 (_Info): Remove.
7962 * inilex.l: Remove old globals.
7963 (ini_init): Use an io_stream for getting the characters.
7964 (ini_getchar): Ditto.
7965 * iniparse.y: Declare yylex as a C++ function.
58b12a06
MB
7966 (add_correct_version): Use [] operator instead of getnth - its more
7967 readable.
341988b9
RC
7968 * io_stream.cc (io_stream::move_copy): Use the copy method.
7969 (io_stream::copy): New method to simply copy from one stream to another.
58b12a06
MB
7970 * io_stream.h (io_stream): New static method copy, and virtual method
7971 get_size.
341988b9
RC
7972 * io_stream_cygfile.cc (io_stream_cygfile::get_size): Implement this.
7973 * io_stream_cygfile.h (io_stream_cygfile::get_size): Declare this.
7974 * io_stream_file.cc (io_stream_file::get_size): Implement this.
7975 * io_stream_file.h (io_stream_file::get_size): Declare this.
7976 * io_stream_memory.h: Include errno as it's neded to parse the header.
7977 (io_stream_memory::get_size): Implement this.
7978 (io_stream_memory::st_size): Delete this.
7979 * list.h: Change getnth into the [] operator.
58b12a06
MB
7980 * netio.cc (NetIO::NetIO): Change prototype to reflect Purl not being
7981 modified.
341988b9
RC
7982 (NetIO::set_url): Ditto.
7983 (NetIO::open): Ditto.
7984 * netio.h: As for netio.cc.
58b12a06
MB
7985 * nio-file.cc (NetIO_File::NetIO_File): Change prototype to reflect
7986 Purl not being modified.
341988b9
RC
7987 * nio-file.h: Ditto.
7988 * nio-ftp.cc (NetIO_FTP::NetIO_FTP): Ditto.
7989 * nio-ftp.h (NetIO_FTP::NetIO_FTP): Ditto.
7990 * nio-http.cc (NetIO_HTTP::NetIO_HTTP): Ditto.
7991 * nio-http.h (NetIO_HTTP::NetIO_HTTP): Ditto.
7992 * nio-i5.cc (NetIO_IE5::NetIO_IE5): Ditto.
7993 * nio-i5.h (NetIO_IE5::NetIO_IE5): Ditto.
7994 * package_meta.cc (packagemeta::~packagemeta): Bugfix: use array delete.
7995 * package_source.cc (packagesource::set_canonical): Ditto.
7996 (packagesource::set_cached): Ditto.
7997 * package_source.h (site::~site): Ditto.
58b12a06
MB
7998 * site.cc: Change site_list_type to a class, and search and replace
7999 sort_key to key globally.
341988b9 8000
071c1c54
RC
80012001-12-01 Robert Collins <rbtcollins@hotmail.com>
8002
58b12a06
MB
8003 * package_source.cc (packagesource::set_canonical): Filename was out by
8004 one.
071c1c54 8005
4fe323f9
RC
80062001-11-30 Robert Collins <rbtcollins@hotmail.com>
8007
8008 * Makefile.in (OBJS): Remove category_list - it's not needed.
8009 * README: More wishlist updates.
8010 * category.cc (Category::Category): Initialise new members.
8011 (Categorycmp): New function.
8012 * category.h (Category): New member key for template use.
8013 * category_list.cc: Remove.
8014 * category_list.h: Remove.
8015 (Categorycmp): New function prototype.
8016 * choose.cc: Remove category_list - not needed.
cef493d7 8017 (set_action): Only show the 'source' option when the source is actually
4fe323f9
RC
8018 available.
8019 (add_required): Fix recursion limiter to 5.
8020 (fill_missing_category): Use list access.
8021 (default_trust): Ditto.
8022 (pick_line::paint): Ditto.
8023 (_view::init_headers): Ditto.
8024 (_view::insert_pkg): Ditto.
8025 (_view::insert_category): Ditto.
8026 (_view::click): Ditto.
8027 (set_view_mode): Ditto.
8028 (do_choose): Ditto.
8029 * cygpackage.h: Remove category_list - not needed.
8030 * geturl.cc (get_url_to_string): Fix null byte insertion.
8031 * inipatse.y: Remove category_list - not needed.
8032 (categories): Use list access.
8033 * package_db.cc: Ditto.
8034 * package_db.h: Remove category_list - not needed.
8035 (packagedb): Use the list template for categories.
8036 * package_meta.cc (add_category): Ditto.
8037 * package_meta.h (CategoryPackage): Link to the category as well.
cef493d7 8038 (packagemeta): Use a list of CategoryPackages instead of Categories
4fe323f9
RC
8039 for more memory efficient cross-referencing.
8040
7d66d192
RC
80412001-11-30 Robert Collins <rbtcollins@hotmail.com>
8042
58b12a06
MB
8043 * package_db.cc (packagedb::flush): Write a canonical version for all
8044 packages irrespective of the media they were installed from.
7d66d192 8045
bb849dbd
RC
80462001-11-29 Robert Collins <rbtcollins@hotmail.com>
8047
8048 * Makefile.in (OBJS): Add package_source and rfc1738.
8049 * README: Wishlist update.
8050 * category_list.cc (register_category): Use references.
8051 * category_list.h (CategoryList): Ditto.
8052 * choose.cc (isinstalled): Remove.
8053 (pkgtrustp): New macro.
8054 (set_action): Use packagemeta.
8055 (add_required): Ditto.
58b12a06
MB
8056 (choose_caption): Example package to choose caption, rather than state
8057 flags.
bb849dbd
RC
8058 (check_existence): Remove.
8059 (set_existence): Remove old code.
8060 (fill_missing_category): Use packagemeta.
8061 (keep_or_skip): Remove.
8062 (default_trust): Use packagemeta and set trust values directly.
8063 (pick_line::set_line): Use packagemeta.
8064 (_view::insert_pkg): Ditto.
8065 (_view::insert_category): Ditto.
8066 (_view::click): Ditto.
8067 (set_view_mode): Ditto. Also remove "exclude" code.
8068 (create_listview): Use packagemeta.
8069 (dialog_cmd): Ditto.
8070 (getpkgbyname): Remove
8071 (scan2): Use packagemeta. Temporarily comment out the holefinding code.
8072 (read_installed_db): Remove.
8073 (package_sort): Use packagemeta.
58b12a06
MB
8074 (do_choose): Use packagemeta. Don't sort the packages - the db does
8075 that.
bb849dbd
RC
8076 * choose.h: Use packagemeta.
8077 * cygpackage.cc (cygpackage::cygpackage): Initialise all variables.
8078 (cygpackage::cygpackage): Ditto.
8079 (cygpackage::set_canonical_version): Copy the passed string.
8080 (cygpackage::~cygpackage): Move cleanup code to destroy().
8081 (cygpackage::destroy): New function.
8082 (cygpackage::getfirstfile): Use a separate buffer.
8083 (cygpackage::getnextfile): Ditto.
8084 (cygpackage::Canonical_version): New function.
8085 (cygpackage::set_sdesc): Ditto.
8086 (cygpackage::set_ldesc): Ditto.
8087 * cygpackage.h (cygpackage::Canonical_version): New method.
8088 (cygpackage::set_sdesc): New method.
8089 (cygpackage::set_ldesc): New method.
8090 (cygpackage::SDesc): New method.
8091 (cygpackage::LDesc): New method.
8092 (cygpackage::set_canonical_version): New method.
8093 * desktop.cc: Include packagedb headers.
8094 (make_password_group): Use packagemeta.
8095 * download.cc: Include packagedb headers.
58b12a06
MB
8096 (check_for_cached): New method to find any cached file and fill out the
8097 database info.
bb849dbd
RC
8098 (download_one): Take a packagesource, support multiple mirrors.
8099 (do_download): Use packagemeta.
8100 * from cwd.cc: Include packagedb headers.
8101 (found_file): Use packagemeta.
8102 * ini.cc (do_ini): Beginning of multiple-mirror support.
8103 * ini.h (CategoryPackage): Remove.
8104 (Dependency): Remove.
8105 (Package): Remove.
58b12a06
MB
8106 (new_package,getpkgbyname,getpackagecategorybyname,add_category):
8107 Remove.
bb849dbd
RC
8108 * inilex.l: Support multiple mirrors.
8109 * iniparse.y: Include packagedb headers.
8110 (parser): Use packagemeta.
8111 (new_package): Remove.
8112 (add_correct_version): New function.
8113 (new_requirement): Remove.
8114 (add_category): Remove.
8115 * install.cc (uninstall_one): Use packagemeta.
8116 (install_one_source): New function.
8117 (install_one): Use packagemeta.
8118 (do_install): Use packagemeta.
8119 * io_stream.cc (io_stream::move): Bugfix on move/copy case.
58b12a06
MB
8120 * io_stream_cygfile.cc (io-stream_cygfile::set_mtime): Do not reopen the
8121 file after setting the mtime, it makes no sense, and results in 0 length
8122 files.
bb849dbd
RC
8123 * io_stream_file.cc (io-stream_file::set_mtime): Ditto.
8124 * list.h: New file, template class for a form of list.
8125 * package_db.cc (packagedb::registerpackage): New function.
8126 * package_db.h (packagedb::npackages ()): New method.
8127 * package_meta.cc (packagemeta::add_version): Use list template.
8128 (packagemeta::set_installed): Ditto.
8129 (packagemeta::add_category): New method.
8130 * package_meta.h: Include necessary headers to parse the class.
8131 (CategoryPackage): New class.
8132 (packagemeta): Initialise all members.
8133 (packagemeta::SDesc): New method.
8134 (packagemeta::Categories): New method.
8135 (packagemeta::add_category): Ditto.
8136 (packagemeta::versions): Change to be a list instance.
8137 * package_source.cc (packagesource::set_canonical): New method.
8138 (packagesource::set_cached): New method.
8139 * package_source.h: Include necessary headers to parse the class.
8140 (site): New class.
8141 (packagesource::packagesource): Initialize all members.
8142 (packagesource): Make this class non-abstract.
8143 * package_version.cc (packageversion::packageversion): New method.
8144 * package_version.h (Dependency): New class.
8145 (packageversion::Canonical_vesion): New method.
8146 (packageversion::SDesc): New method.
8147 (packageversion::LDesc): New method.
8148 (packageversion::new_requirement): Ditto.
8149 (packageversion::srcpicked, binpicked): What to install.
8150 (packageversion::src, bin): Installation source data.
8151 * rfc1738.cc: New file. Escapes special characters in URL's.
8152 * rfc1738.h: Ditto.
8153
90d14922
RC
81542001-11-26 Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>
8155
8156 * nio-http.cc (NetIO_HTTP::NetIO_HTTP): Stop header parsing when
8157 SimpleSocket::gets() returns a zero-length string, so that we
8158 don't end up eating the entire stream thinking it's all header info.
8159
7c7034e8
RC
81602001-11-23 Robert Collins <rbtcollins@hotmail.com>
8161
8162 * install.cc (badrename): Remove.
58b12a06
MB
8163 (do_install): Use packagedb flush method to write
8164 /etc/setup/installed.db.
7c7034e8
RC
8165 * io_stream.cc (io_stream::move_copy): New method.
8166 (io_stream::move): New method.
8167 * io_stream.h (io_stream): New methods move and move_copy.
8168 * io_stream_cygfile.cc (io_stream_cygfile::move): New method.
8169 * io_stream_cygfile.h (io_stream_cygfile): New method move.
8170 * io_stream_file.cc (io_stream_file::move): New method.
8171 * io_stream_file.h (io_stream_file): New method move.
8172 * package_db.cc (packagedb::flush): New method.
8173 * package_db.h (packagedb): New method flush.
8174
fa0c0d10
RC
81752001-11-23 Robert Collins <rbtcollins@hotmail.com>
8176
8177 * Makefile.in (OBJS): Add package_version.
8178 * ategory.cc (Category::Category): Update constructors.
8179 * category_list.cc (CategoryList::register_category): Insert correctly.
8180 * choose.cc: Include package_version.h, not package.h.
8181 * cygpackage.cc: Ditto.
8182 (cygpackage::uninstall): New method.
8183 * cygpackage.h (cygpackage): Rename genericpackage to packageversion.
8184 New method uninstall.
8185 * hash.cc (add, has, enumerate): Change prototype to be accurate.
8186 * hash.h (hash): Change prototypes to be accurate.
8187 * ini.h (_Info): New parameterless constructor.
8188 (CategoryPackage): New constructor.
8189 (Package): Ditto.
8190 * install.cc: Don't include unneeded headers.
8191 Include package database headers.
8192 (hash::add_subdirs): Remove.
58b12a06
MB
8193 (uninstall_one): Use packagemeta->uninstall to perform the
8194 uninstallation. Don't uninstall source packages.
8195 (do_install): Just can uninstall_one once as we ignore source packages
8196 now. Don't copy the installed.old database accross, instead iterate
8197 through the packagedb packages list and write the installed packages
8198 out.
fa0c0d10
RC
8199 * package_db.cc: Include package_version.h, not package.h.
8200 (packagedb::packagedb): Never let db be undefined.
8201 Record the installation filename, so we can reconstruct installed.db.
8202 (packagedb::addpackage): Insert packages in alpha sorted order.
8203 (packagedb::categories): Initialise correctly.
8204 * package_meta.cc: Include win32 and mount headers as a workaround to
8205 current io_stream limitations. Include a TODO about that.
8206 (standard_dirs): New, from install.cc.
8207 (hash::add_subdirs): New, from install.cc.
8208 (packagemeta::set_installed): Rename genericpackage to packageversion.
8209 (packagemeta::uninstall): New method.
8210 * package_meta.h: Rename genericpackage to packageversion.
8211 (packagemeta): Update constructor.
8212 (add_version, set_installed): Rename genericpackage to packageversion.
8213 (uninstall): New method.
8214 (installed_from): New member.
8215 * package_source.cc: New file.
8216 * package_source.h: New file.
8217 * package_version.cc: New file.
8218 * package_version.h: New file.
8219 * package.cc: Removed.
8220 * package.h: Removed.
cef493d7 8221
7b606ae5
RC
82222001-11-21 Robert Collins <rbtcollins@hotmail.com>
8223
8224 * Makefile.in (OBJS): Add category.o and category_list.o.
8225 * category.h: New file.
8226 * category.cc: New file.
8227 * category_list.h: New file.
8228 * category_list.cc: New file.
8229 * choose.cc: Include category headers.
8230 (fill_missing_category): Use package_db to access global categories.
8231 (_view::insert_pkg): Ditto.
8232 (_view::insert_category): Ditto.
8233 (set_view_mode): Ditto.
8234 (getcategorybyname): Remove.
8235 * cygpackage.h: Include category_list.h to parse this correctly.
8236 (cygpackage): New virtual &Categories.
8237 * ini.h (_CategoryPackage): More C to C++ conversion.
8238 (Category): Remove.
8239 (getcategorybyname): Remove.
8240 (register_category): Remove.
8241 * iniparse.y: Include package db and category headers.
8242 (categories): Use package_db to access global categories.
8243 (category): Remove.
8244 (ncategories): Remove.
8245 (register_category): Remove.
8246 * package.h: New virtual &Categories.
58b12a06
MB
8247 * package_db.cc (packagedb::packagedb): Don't read the installed db
8248 twice.
7b606ae5 8249 (packagedb::categories): Declare.
58b12a06
MB
8250 * package_db.h (packagedb): New member categories for global categories
8251 list.
7b606ae5 8252
d0fa1c4e
RC
82532001-11-21 Robert Collins <rbtcollins@hotmail.com>
8254
8255 * choose.h: Don't include ini.h
8256 * ini.h: Allow pure c++ in the header file.
8257
24cbae7f
RC
82582001-11-21 Robert Collins <rbtcollins@hotmail.com>
8259
8260 * install.cc (do_install): Write a version 2 installed.db file.
58b12a06
MB
8261 * package_db.cc (packagedb::packagedb): Read version 1 and 2
8262 installed.db files.
24cbae7f 8263
7939f6d1
RC
82642001-11-21 Robert Collins <rbtcollins@hotmail.com>
8265
8266 * Makefile.in (OBJS): Add package abstraction objects.
8267 * choose.cc: Include package abstraction headers.
8268 (read_installed_db): Use packagedb class and ignore installed sources.
8269 * cygpackage.cc: New file.
8270 * cygpackage.h: New file.
8271 * filemanip.h (get_file_size): Use unixy types.
8272 * package.h: New file.
8273 * package.cc: New file.
8274 * package_db.cc: New file.
8275 * package_db.h: New file.
8276 * package_meta.cc: New file.
8277 * package_meta.h: New file.
8278
33bc0053
RC
82792001-11-21 Robert Collins <rbtcollins@hotmail.com>
8280
8281 * REAME: Updates to wishlist.
8282
12ccadc0
RC
82832001-11-16 Robert Collins <rbtcollins@hotmail.com>
8284
8285 * README: Updated and added my list of wishlist and todo items.
8286
ca9506cc
RC
82872001-11-14 Robert Collins <rbtcollins@hotmail.com>
8288
8289 * Makefile.in (OBJS): Include io_stream_memory in setup.exe.
8290 * archive_tar.cc (archive_tar::write): New prototype.
8291 (archive_tar::seek): New method.
8292 * archive.h (archive_tar_file): Update write() and add seek().
8293 (archive_tar): Ditto.
8294 * archive_tar_file.cc (archive_tar_file::write): New prototype.
8295 (archive_tar_file::seek): New method.
8296 * compress_bz.cc (compress_bz::write): New prototype.
8297 (compress_bz::seek): New function.
8298 * compress_bz.h (compress_bz): Update write() and add seek().
8299 * compress_gz.cc (compress_gz::write): New prototype.
8300 (compress_gz::seek): New function.
8301 * compress_gz.h (compress_gz): Update write() and add seek().
8302 * geturl.cc: Include io_stream headers.
8303 (GUBuf): Remove.
8304 (get_url_to_string): Use a io_stream_memory buffer instead of GUBuf.
8305 * io_stream.h (io_stream_seek_t): New enum.
8306 (io_stream): Update write() and add seek().
8307 * io_stream_cygfile.cc (io_stream_cygfile::write): New prototype.
8308 (io_stream_cygfile::seek): New function.
58b12a06
MB
8309 * io_stream_cygfile.h (io_stream_cygfile): Update write() and add
8310 seek().
ca9506cc
RC
8311 * io_stream_file.cc (io_stream_file::write): New prototype.
8312 (io_stream_file::seek): New function.
8313 * io_stream_file.h (io_stream_file): Update write() and add seek().
8314
2db33f10
RC
83152001-11-13 Brian Keener <bkeener@thesoftwaresource.com>
8316
8317 * localdir.cc: Add headers unistd.h and port.h.
cef493d7 8318 (save_local_dir): Expand search logic to include local directory for
2db33f10
RC
8319 location of file last-cache.
8320 (dialog_cmd): Skip IDD_ROOT when downloading and use Back button.
cef493d7 8321 (do_local_dir): Expand search logic to include local directory for file
2db33f10
RC
8322 last-cache.
8323 * res.rc (IDD_CHOOSE_DIALOG): Add hotkey to View button.
cef493d7 8324 * Source.cc (dialog_cmd): Skip IDD_ROOT if select Download from
2db33f10 8325 Internet.
cef493d7 8326 (do_source): Default to Install from Internet on first entry or
2db33f10
RC
8327 previous selection if backing up from IDD_ROOT or IDD_LOCAL_DIR.
8328
03a6c5b1
RC
83292001-11-13 Robert Collins <rbtcollins@hotmail.com>
8330
8331 * choose.cc (find_tar_ext): Only match at the end of the string.
8332 (getpkgbyname): Prevent NULL pointer dereference.
8333
b24c88b3
RC
83342001-11-13 Robert Collins <rbtcollins@hotmail.com>
8335
8336 * Makefile.in (CFLAGS): Add warnings and -Werr.
58b12a06
MB
8337 (WARNONLY_FLAGS): For sources that produce (harmless) errors no matter
8338 what.
b24c88b3
RC
8339 (OBJS): Add io_stream class' objects.
8340 (autoload.o): Use WARNONLY_FLAGS.
8341 (inilex.o): Ditto.
8342 (iniparse.o): Ditto.
8343 * archive.cc: New file.
8344 * archive.h: New file.
8345 * archive_tar.cc: New file.
8346 * archive_tar.h: New file.
8347 * archive_tar_file.cc: New file.
8348 * autoload.c: Fix compiler warnings (unused, deprecated conversion).
8349 * choose.cc: Use io_stream.h, not mount.h.
8350 Run indent.
58b12a06
MB
8351 (find_tar_ext): Rewritten to use strstr, and to accept .tar as an
8352 extension.
b24c88b3
RC
8353 (read_installed_db): Use io_streams.
8354 * choose.h: Run indent.
8355 * compress.cc: New file.
8356 * compress.h: New file.
8357 * compress_bz.cc: New file.
8358 * compress_bz.h: New file.
8359 * compress_gz.cc: New file.
8360 * compress_gz.h: New file.
8361 * concat.cc: Run indent.
8362 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8363 * concat.h: Run indent.
8364 * desktop.cc: Run indent.
8365 Include mklink2.h rather than redefining by hand.
8366 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8367 (etc_profile): Fix compiler warning (deprecated conversion).
8368 (make_link): Fix compiler warning (deprecated conversion).
8369 Tidy up use of args variable - consolidate into argbuf.
8370 (start_menu): Fix compiler warning (deprecated conversion).
8371 (desktop_icon): Fix compiler warning (deprecated conversion).
8372 (make_etc_profile): Fix compiler warning (deprecated conversion).
8373 (uexists): Fix compiler warning (deprecated conversion).
8374 (check_desktop): Fix compiler warning (deprecated conversion).
8375 (check_startmenu): Fix compiler warning (deprecated conversion).
8376 * dialog.cc: Run indent.
8377 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8378 (fatal): Fix compiler warning (deprecated conversion).
8379 * dialog.h: Run indent.
8380 * diskfull.cc: Run indent.
8381 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8382 * download.cc: Run indent.
8383 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8384 (download_one): Fix compiler warning (signed vs unsigned comparison).
8385 * filemanip.h: Run indent.
8386 * find.cc: Run indent.
8387 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8388 (find): Fix compiler warning (deprecated conversion).
8389 * find.h: Run indent.
8390 * fromcwd.cc: Run indent.
8391 * geturl.cc: Run indent.
8392 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8393 (dialog_cmd): Return a value.
8394 (dialog_proc): Remove unused variables.
8395 Return a value.
8396 (get_url_to_file): Fix compiler warning (deprecated conversion).
8397 * geturl.h: Run indent.
8398 * hash.cc: Run indent.
8399 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8400 * hash.h: Run indent.
8401 * ini.cc: Run indent.
8402 Use io_streams.
8403 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8404 (do_ini): Use io_streams for local io.
8405 * ini.h: Run indent.
8406 * inilex.l (ignore_line): Fix compiler warning (is not a prototype).
8407 Fix compiler warning (brackets for truth assignment).
8408 * install.cc: Run indent.
8409 Fix compiler warning (/* in comment).
8410 Use io_streams.
8411 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8412 (dialog_cmd): Return a value.
8413 (dialog_proc): Return a value.
8414 (start_tics): Deleted - was unused.
8415 (badrename): Fix compiler warnings (unused, deprecated conversion).
8416 (standard_dirs): Fix compiler warning (deprecated conversion).
8417 (exists): Remove.
8418 (uninstall_one): Convert to io_streams.
8419 (install_one): Convert to io_streams.
8420 (do_install): Convert to io_streans.
8421 Fix compiler warning (deprecated conversion).
8422 * io_stream.cc: New file.
8423 * io_stream.h: New file.
8424 * io_stream_cygfile.cc: New file.
8425 * io_stream_cygfile.h: New file.
8426 * io_stream_file.cc: New file.
8427 * io_stream_file.h: New file.
8428 * localdir.cc: Run indent.
8429 Use io_streams.
8430 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8431 (get_root_dir_now): Remove.
8432 (save_local_dir): Convert to io_streams.
8433 (dialog_cmd): Return a value.
8434 (do_local_dir): Convert to io_streams.
8435 (log.cc): Run indent.
8436 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8437 (log): Fix compiler warning (deprecated conversion).
8438 (log_save): Fix compiler warning (deprecated conversion).
8439 * log.h: Run indent.
8440 (log): Fix compiler warning (deprecated conversion).
8441 (log_save): Fix compiler warning (deprecated conversion).
8442 * main.cc: Run indent.
8443 Don't include "netio.h".
8444 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8445 (netio_test): Remove.
8446 (sid_auth): Fix compiler warning (partially bracketed initialiser).
8447 (WinMain): Return a value.
8448 * mkdir.cc: Run indent.
8449 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8450 * mklink2.c: Run indent.
8451 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8452 (mkcygsymlink): New function.
8453 * mklink2.h: New file.
8454 * mount.cc: Run indent.
8455 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8456 (create_mount): Remove unused variables.
8457 (cygpath): Fix compiler warning (signed vs unsigned comparison).
8458 * mount.h: Run indent.
8459 * msg.cc: Run indent.
8460 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8461 (msg): Fix compiler warning (deprecated conversion).
8462 (mbox): Fix compiler warning (deprecated conversion).
8463 * msg.h: Run indent.
8464 (msg): Fix compiler warning (deprecated conversion).
8465 * net.cc: Run indent.
8466 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8467 (dialog_cmd): Return a value.
8468 * netio.cc: Run indent.
8469 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8470 (auth_cmd): Return a value.
8471 * netio.h: Run indent.
8472 * nio-file.cc: Run indent.
8473 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8474 (NetIO_File::NetIO_File): Fix compiler warning (deprecated conversion).
8475 * nio-file.h: Run indent.
8476 * nio-ftp.cc: Run indent.
8477 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8478 * nio-ftp.h: Run indent.
8479 * nio-http.cc: Run indent.
8480 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8481 * nio-http.h: Run indent.
8482 * nio-ie5.cc: Run indent.
8483 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8484 * nio-ie5.h: Run indent.
8485 * other.cc: Run indent.
8486 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8487 (dialog_cmd): Return a value.
8488 * port.h: Run indent.
8489 * postinstall.cc: Run indent.
8490 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8491 (cmd): Fix compiler warning (deprecated conversion).
8492 (eun): Fix compiler warning (deprecated conversion).
8493 * root.cc: Run indent.
8494 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8495 * simpsock.cc: Run indent.
8496 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8497 * simpsock.h: Run indent.
8498 * site.cc: Run indent.
8499 Use io_streams.
8500 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8501 (get_root_dir_now): Remove.
8502 (save_site_url): Convert to io_streams.
8503 (dialog_cmd): Return 0.
8504 (get_initial_list_idx): Convert to io_streans.
8505 * source.cc: Run indent.
8506 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8507 (check_if_enable_next): Remove.
8508 (load_dialog): Remove unused variables.
8509 (save_dialog): Ditto.
8510 (dialog_cmd): Return a value.
8511 * splash.cc: Return a value.
8512 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8513 (dialog_cmd): Return a value.
8514 * state.cc: Run indent.
8515 (cvsid): Fix compiler warnings (unused, deprecated conversion).
8516 * state.h: Run indent.
8517 * tar.h: Remove.
8518 * tar.cc: Remove.
8519
398dd7b2
CF
85202001-11-12 Christopher Faylor <cgf@redhat.com>
8521
8522 * desktop.cc (start_menu): Change start menu name to "Cygwin".
8523 (check_startmenu): Ditto.
8524
c29ee141
CF
85252001-11-11 Christopher Faylor <cgf@redhat.com>
8526
8527 * choose.cc (parse_filename): Finish reorganization by correctly
8528 decrementing p in memmove.
8529
3a8276de
CF
85302001-11-11 Christopher Faylor <cgf@redhat.com>
8531
8532 * choose.cc (parse_filename): Reorganize code to work around gcc
8533 optimization problem.
8534
6eea52fb
RC
85352001-11-09 Gareth Pearce <tilps@hotmail.com>
8536
8537 * choose.cc (set_action): Allow skip as an option for installed
8538 packages that have version number not listed in setup.ini.
8539
cf99b153
RC
85402001-11-10 Robert Collins <rbtcollins@hotmail.com>
8541
8542 * choose.cc (set_cation): Backout last change.
8543 (choose_caption): Ditto.
8544
55e204f6
RC
85452001-11-10 Robert Collins <rbtcollins@hotmail.com>
8546
8547 * ini.h (actions): Remove - transferred to choose.h.
8548 (views): Ditto.
8549 * choose.h: Protect class's from "C" compilers.
8550 (actions): New enum, from ini.h. This may not be the 'right' place
8551 but that place doesn't exist yet.
8552 (_views): New enum, from ini.h.
58b12a06
MB
8553 * choose.cc (set_action): Handle installed packages with a version not
8554 in setup.ini.
55e204f6
RC
8555 (choose_caption): Ditto.
8556 * iniparse.y: Rearrange header order to handle new ini.h.
8557
85582001-11-10 Robert Collins <rbtcollins@hotmail.com>
8559
8560 * ini.h (_Info): Fix compiler warnings (signed vs unsigned comparison).
8561 (registry_category): Fix compiler warning (deprecated conversion).
8562 * iniparse.y (registry_category): Ditto.
58b12a06
MB
8563 * choose.cc (cvsid): Fix compiler warnings (unused, deprecated
8564 conversion).
55e204f6
RC
8565 (add_requried): Remove unused variable.
8566 (choose_caption): Handle all enumeration values via a default.
8567 (paint): Fix compiler warnings (unused, deprecated conversion).
58b12a06
MB
8568 (scroll_common): Fix compiler warnings (unused, signed vs unsigned
8569 comparison).
55e204f6
RC
8570 (list_clicK): Fix compiler warnings (signed vs unsigned comparison).
8571 (note_width): Fix compiler warnings (deprecated conversion).
8572 (keep_or_skip): Fix compiler warnings (unused).
8573 (_view::mode_caption): Fix compiler warnings (deprecated conversion).
8574 (set_view_mode): Fix compiler warnings (unused).
58b12a06
MB
8575 (create_listview): Fix compiler warnings (unused, incorrect format,
8576 reaches end of function).
55e204f6 8577 (dialog_proc): Fix compiler warnings (unused).
58b12a06
MB
8578 (read_installed_db): Fix compiler warnings (unused, deprecated
8579 conversion).
55e204f6
RC
8580 * choose.h (_header): Fix compiler warnings (deprecated conversion).
8581 (_view): Ditto.
8582
67a55ad9 85832001-11-08 Pavel Tsekov <ptsekov@syntrex.com>
cef493d7 8584
67a55ad9
RC
8585 * simpsock.h (SimpleSocket::invalidate): Declare new method.
8586 * simpsock.cc (SimpleSocket::invalidate): Implement new method.
8587 (SimpleSocket::SimpleSocket): Initialize buf to zero. Do not allocate
8588 memory for buf in the constructor.
8589 (SimpleSocket::~SimpleSocket): Use SimpleSocket::invalidate().
8590 (SimpleSocket::printf): Use SimpleSocket::write() instead of send().
8591 (SimpleSocket::write): Check object consistency - return -1 on error.
8592 invalidate() the object on socket write error.
8593 (SimpleSocket::fill): Check object consistency - return -1 on error.
8594 invalidate() the object if socket read error is encountered and there
8595 is no more data available in the internal read buffer.
8596 Allocate memory for the internal read buffer.
8597 (SimpleSocket::gets): Return zero (NULL pointer) if error is encountered
8598 during fill() and no more data is available in the internal read buffer.
8599 (SimpleSocket::read): Check object consistency - return -1 on error.
8600 invalidate() the object if socket read error is encountered.
8601 * nio-ftp.cc (NetIO_FTP:NetIO_FTP): Allow 125 as valid response code to
8602 the RETR command (fix for MS IIS ftp server 5 - possibly others too).
8603 (NetIO_FTP::ok): Check if the SimpleSocket object is ok().
8604 (NetIO_FTP::read): Use NetIO_FTP::ok().
8605 * nio-http.cc: Check for valid return value of SimpleSocket::gets().
8606 (NetIO_HTTP::ok): Check if the SimpleSocket object is ok().
8607
5898e300
RC
86082001-11-09 Robert Collins <rbtcollins@hotmail.com>
8609
58b12a06
MB
8610 * simpsock.cc (cvsid): Avoid compiler warnings (not used, deprecated
8611 conversion).
8612 (SimpleSocket::SimpleSocket): Avoid compiler warnings (deprecated
8613 conversion).
5898e300
RC
8614 (SimpleSocket::printf): Ditto.
8615 (SimpleSocket::write): Ditto.
8616 * simpsock.h (SimpleSocket): Avoid compiler warnings for constructor,
8617 printf and write.
58b12a06
MB
8618 * nio-ftp.cc (cvsid): Avoid compiler warnings (not used, deprecated
8619 conversion).
5898e300 8620 (NetIO_FTP::NetIO_FTP): Remove unused variable done.
58b12a06
MB
8621 * nio-http.cc (cvsid): Avoid compiler warnings (not used, deprecated
8622 conversion).
5898e300 8623
8e58f8fd
RC
86242001-11-07 Charles Wilson <cwilson@ece.gatech.edu>
8625
8626 * geturl.cc (get_url_to_string): clean up memory leak
8627 (get_url_to_file): ditto
cef493d7 8628
4b4002ab
RC
86292001-11-06 Robert Collins <rbtcollins@hotmail.com>
8630
8631 * localdir.cc (dialog_cmd): Go back to IDD_ROOT in every case.
8632 * source.cc (dialog_cmd): Go forward to IDD_ROOT in every case.
8633
94525fd9
RC
86342001-11-06 Pavel Tsekov <ptsekov@syntrex.com>
8635
8636 * fromcwd.cc (found_file): Free() memory containing the version and
58b12a06
MB
8637 filepath information for a given package, before replacing the pointers
8638 which reference this memory.
94525fd9
RC
8639
86402001-11-06 Robert Collins <rbtcollins@hotmail.com>
ca83c665
RC
8641
8642 * fromcwd: Fix compiler warnings for cvsid.
8643 (canonicalize_version): Fix compilter warnings.
8644 (do_fromcwd): Ditto.
8645 * version.h: Fix compiler warnings for canonicalize_version.
8646
ce1f9ec2
RC
86472001-11-03 Robert Collins <rbtcollins@hotmail.com>
8648
8649 * res.rc (IDD_CHOOSE): Move the view caption to the right hand side.
8650
89d82ec7
RC
86512001-11-02 Robert Collins <rbtcollins@hotmail.com>
8652
8653 * res.rc (IDD_CHOOSE): Tweak for use on a 640x480 screen.
8654
c8fea72a
RC
86552001-11-02 Robert Collins <rbtcollins@hotmail.com>
8656
58b12a06
MB
8657 * choose.cc (set_action): Correctly allow skip for any uninstalled
8658 package.
8114d309
RC
8659
86602001-11-02 Robert Collins <rbtcollins@hotmail.com>
8661
58b12a06
MB
8662 * choose.cc (default_trust): Change the "Required" forced install
8663 category to "Base".
c8fea72a 8664
f557695e
RC
86652001-11-02 Robert Collins <rbtcollins@hotmail.com>
8666
8667 * choose.cc: Ran indent.
58b12a06
MB
8668 (set_action): When the requested trust level is missing and the level
8669 was not user requested, set the action to ACTION_SAME_CURR.
f557695e 8670
9a60dafc
CF
86712001-11-01 Christopher Faylor <cgf@redhat.com>
8672
cef493d7 8673 * Makefile.in (mingw_getopt.o): Fix typo in non-verbose compilation.
f557695e
RC
8674
86752001-11-02 Robert Collins <rbtcollins@hotmail.com>
8676
8677 * choose.cc (_view::init_headers): Resync with the paint logic.
9a60dafc 8678
878faffd
RC
86792001-11-02 Robert Collins <rbtcollins@hotmail.com>
8680
58b12a06
MB
8681 * choose.cc (add_required): Allow SKIP and SRC_ONLY for currently
8682 installed packages.
878faffd 8683
05bfdf26
RC
86842001-11-02 Robert Collins <rbtcollins@hotmail.com>
8685
58b12a06
MB
8686 * choose.cc (default_trust): Autoset currently installed packages per
8687 the user's selection of prev/curr/exp.
05bfdf26 8688
0b9af00c
RC
86892001-11-02 Robert Collins <rbtcollins@hotmail.com>
8690
8691 * splash.cc (dialog_proc): Return TRUE as specified in the WIN32 API.
8692
7cefe128
RC
86932001-11-02 Pavel Tsekov <ptsekov@syntrex.com>
8694
8695 * geturl.cc (is_showing): Remove.
8696 (is_local_install): New static variable. Controls whether the
8697 progress dialog and the supporting thread will be created.
58b12a06
MB
8698 (dialog_proc): Return TRUE to WM_INITDIALOG as specified by the WIN32
8699 API.
7cefe128 8700 (init_dialog): Remove usage of SetForegroundWindow and is_showing.
cef493d7 8701 This prevents the progress dialog to gain control over the
7cefe128
RC
8702 application and fixes the "setup.exe going to background" problem.
8703 (progress): Use is_local_install.
8704 (get_url_to_string): Set is_local_install.
8705 (dismiss_url_status_dialog): Use is_local_install.
8706 * install.cc (dialog_proc): Return TRUE as specified in WIN32 API.
8707 (init_dialog): Remove usage of SetForegroundWindow.
cef493d7 8708 This prevents the progress dialog to gain control over the
7cefe128
RC
8709 application and fixes the "setup.exe going to background" problem.
8710
42a99ed1
RC
87112001-11-02 Robert Collins <rbtcollins@hotmail.com>
8712
8713 * choose.cc (list_click): Change r to row for clarity.
8714 When we shrink the list below 1 page, scroll to the top of the list.
8715 (_view::click): Return the actual change for contractions.
58b12a06
MB
8716 (dialog_proc): Return TRUE to WM_INITDIALOG as specified by the Win32
8717 API.
42a99ed1 8718
45c2d7d3
RC
87192001-11-02 Robert Collins <rbtcollins@hotmail.com>
8720
58b12a06
MB
8721 * choose.cc (dialog_cmd): Swap cygwin root selection and local dir
8722 selection order.
45c2d7d3
RC
8723 * localdir.cc: Ran indent.
8724 (get_root_dir_now): New function.
8725 (save_local_dir): New function.
58b12a06
MB
8726 (dialog_cmd): Use it and swap cygwin root selection and local dir
8727 selection order.
45c2d7d3 8728 (do_local_dir): If there is a saved local dir, read it in.
58b12a06
MB
8729 * net.cc (dialog_cmd): Swap cygwin root selection and local dir
8730 selection order.
45c2d7d3
RC
8731 * root.cc (dialog_cmd): Ditto.
8732 * source.cc (dialog_cmd): Ditto.
8733
2399c54d
RC
87342001-11-01 Robert Collins <rbtcollins@hotmail.com>
8735
8736 * choose.cc(list_vscroll): Return 0 as required by win32.
8737 (list_hscroll): Ditto.
8738 (list_click): Ditto.
8739
8e4402a9
RC
87402001-11-01 Robert Collins <rbtcollins@hotmail.com>
8741
8742 * argv.cc: Remove.
8743 * argv.h: Remove.
8744 * main.cc(WinMain): Use __argv to retrieve command line parameters.
8745 * Makefile,in: Remove argv.o.
8746
c168185f
RC
87472001-11-01 Matt Hargett <matt@use.net>
8748
cef493d7
CF
8749 * geturl.cc (progress): Change int to unsigned int to eliminate
8750 lint warnings.
8751 * (get_url_to_string): Check for NULL pointer.
8752 * mount.cc (find2): Use free instead of delete for malloc'd
8753 memory.
8754 * nio-http.cc (NetIO_HTTP::NetIO_HTTP): Fix memory leak.
c168185f 8755
f97a1ece
RC
87562001-10-31 Robert Collins <rbtcollins@hotmail.com>
8757
58b12a06
MB
8758 * choose.cc(_view::insert_under): Handle linen > nlines and lines[linen]
8759 with neither a package nor a category. The lines[linen] bug was reported
8760 by Matt (matt@usa.net).
8761 (read_installed_db): Bugfix for testing whether a package has a source
8762 tarball. Reported by Matt (matt@usa.net).
8763 * geturl.cc(dialog): Rename gw_dialog to local_gw_dialog to avoid
8764 programmer confusion and lint errors. Reported by Matt (matt@usa.net).
f97a1ece 8765
d52ed64b
RC
87662001-10-31 Robert Collins <rbtcollins@hotmail.com>
8767
58b12a06
MB
8768 * argv.cc: New file, converts arguments for -mwindows
8769 programs. (Simplified derivation from dcrt0.cc.)
d52ed64b
RC
8770 * argv.h: New file.
8771 * Makefile,in: Add argv.o and mingw_getopt.o to setup.exe object list.
8772 Add mingw_getopt.o build rule.
8773 * main.cc(WinMain): Initialise argv and argc for use by getopt.
8774
392ba1ba
CF
87752001-10-27 Christopher Faylor <cgf@redhat.com>
8776
8777 * res.rc: Rearrange info on top line slightly.
8778
31324d15
CF
87792001-10-27 Christopher Faylor <cgf@redhat.com>
8780
8781 * desktop.cc (make_passwd_group): Move file creation earlier in the
8782 process to ensure that passwd-grp.bat reflects desired operation.
8783
87842001-27-10 Trevor Forbes <t4bs@hotmail.com>
8785
8786 * postinstall.cc (each): Remove "*.done" file else rename will fail.
8787
ee411d77
CF
87882001-10-16 Christopher Faylor <cgf@redhat.com>
8789
8790 * res.rc: Oops. Take 640x480 screen size into account.
8791
e74944da
CF
87922001-10-16 Christopher Faylor <cgf@redhat.com>
8793
8794 * res.rc: Enlarge chooser screen.
8795
e368cfb9
CF
87962001-10-12 Christopher Faylor <cgf@redhat.com>
8797
8798 * Makefile.in: Accomodate changes to w32api_include macro.
8799
a6ba3670
CF
88002001-10-12 Christopher Faylor <cgf@redhat.com>
8801
8802 * Makefile.in: Use correct flags for windres.
8803
683e96f6
CF
88042001-10-12 Christopher Faylor <cgf@redhat.com>
8805
8806 * Makefile.in (CFLAGS): Remove -nostdinc from CFLAGS.
8807
2c18c00b
CF
88082001-10-12 Christopher Faylor <cgf@redhat.com>
8809
8810 * choose.cc (pick_line::paint): Reorganize after botched patch.
8811
0f61a05a
CF
88122001-10-12 Christopher Faylor <cgf@redhat.com>
8813
8814 * choose.cc (pick_line::paint): Add missing declaration.
8815
308d6f3e
CF
88162001-10-10 Ralf Habacker <Ralf.Habacker@freenet.de>
8817
8818 * choose.cc (pick_line::paint): Add package name to sdesc for display.
8819
3bcf85be
RC
8820Wed Sep 26 21:39:00 Robert Collins rbtcollins@hotmail.com
8821
8822 * choose.cc (_view::insert_pkg): Correctly exit loop.
8823 * iniparse.y (register_category): Always insert new categories.
8824
fb2cd8f6
CF
8825Fri Sep 21 13:56:32 2001 Christopher Faylor <cgf@cygnus.com>
8826
8827 * inilex.l (yylex): For comments, eat all characters up to, but not
8828 including newline.
8829
127b32e1
CF
8830Sun Aug 26 12:50:01 2001 John Marshall <jmarshall@acm.org>
8831
8832 * fromcwd.cc (found_file): Use correct package name when adding an
8833 unknown package rather than random stack garbage.
8834
2cd555aa
CF
8835Sun Aug 12 14:25:21 2001 Christopher Faylor <cgf@cygnus.com>
8836
8837 * desktop.cc (make_passwd_group): .bat files need \r\n endings.
8838
4254cc64
CF
8839Wed Aug 8 13:53:47 2001 Christopher Faylor <cgf@cygnus.com>
8840
8841 * desktop.cc (etc_profile): Leave environment variables untouched.
8842
acbae401
CV
88432001-08-07 Corinna Vinschen <corinna@vinschen.de>
8844
8845 * autoload.c: Add dynamic load statements for NT/W2K
8846 advapi32 functions not available in 9x/ME.
8847 * main.cc (set_default_dacl): New function.
8848 (WinMain): Call `set_default_dacl' if running on NT/W2K.
8849
969a294c
CF
8850Sat Aug 4 21:35:53 2001 Christopher Faylor <cgf@cygnus.com>
8851
8852 * ini.h (_CategoryPackage): Change pkg field to pkgname for
8853 consistency.
8854 * choose.cc: Use pkgname field when referencing _CategoryPackage
8855 throughout.
8856 (fill_missing_category): Don't add excluded packages.
8857 (default_trust): Ditto.
8858 (_view::insert_pkg): Ditto.
8859 * iniparse.y (register_category): Use consistent variable name.
8860
9eeb0e83
ED
88612001-07-09 Egor Duda <deo@logos-m.ru>
8862
8863 * choose.cc: Use system foreground color for text output.
8864
06560feb
CF
8865Sat Jul 7 00:40:28 2001 Christopher Faylor <cgf@cygnus.com>
8866
8867 * choose.cc (set_action): Use default trust for determining reinstall
8868 and source only.
8869 (default_trust): Set default trust.
8870 (pick_line::paint): Allow source selection when reinstalling or
8871 retrieving.
8872
1fb09149
CF
8873Fri Jul 6 18:08:49 2001 Christopher Faylor <cgf@cygnus.com>
8874
8875 * choose.cc (isinstalled): Modify to properly accomodate special case
8876 of "download only".
8877 (set_action): Check downloaded components, not installed components if
8878 "download only".
8879 (set_existence): Always include full list of files when "download
8880 only".
8881
14cfffa5
CF
8882Fri Jul 6 00:37:05 2001 Christopher Faylor <cgf@cygnus.com>
8883
8884 * choose.cc (pick_line::paint): Properly display "na" field when no
8885 source exists.
8886
f54385f6
CF
8887Thu Jul 5 00:34:23 2001 Christopher Faylor <cgf@cygnus.com>
8888
8889 * choose.cc (scan2): Ensure that older versions do not show up in
8890 "Test" slot.
8891
85b1fb54
CF
8892Mon Jul 2 15:47:59 2001 Christopher Faylor <cgf@cygnus.com>
8893
8894 * choose.cc (set_action): Allow "Skip" action if trust != installed.
8895 * res.rc: Fix copyright.
8896
2dada532
CF
8897Sat Jun 30 14:05:21 2001 Michael A Chase <mchase@ix.netcom.com>
8898
8899 * res.rc (IDD_LOCAL_DIR): Change caption to match the other dialog
8900 boxes.
06c6d195 8901 (IDD_CHOOSE): Adjust horizontal size so package names are visible.
2dada532
CF
8902
8903 * choose.cc: Restore some more changes from 2001-06-25, throughout.
8904 (paint): Wrap some excessively long lines.
8905 (pick_line::paint): Ditto. Move the arrow in the "Current" column
8906 right to where it belongs. Move the source checkbox slightly to the
8907 right.
8908 (do_choose): List categories and required packages in setup.log.full.
8909
8910Sat Jun 30 23:04:59 2001 Christopher Faylor <cgf@cygnus.com>
8911
58b12a06
MB
8912 * choose.cc (scan2): Restore source scanning eliminated by previous
8913 checkin.
2dada532 8914
1b13eeec
CF
8915Sat Jun 30 15:18:33 2001 Christopher Faylor <cgf@cygnus.com>
8916
8917 * ini.h (struct _Info): Add "derived" element.
8918 * choose.cc (scan2): Try to place unknown tar files into proper slot
8919 when package exists in setup.ini but tar file does not.
8920
9307254d
RC
8921Sat Jun 30 13:39:00 2001 Robert Collins <rbtcollins@hotmail.com>
8922
8923 * choose.cc (create_listview): Call set_view_mode with VIEW_CATEGORY.
8924 (do_choose): Log the first category name.
8925
3467d79f
CF
8926Fri Jun 29 23:07:44 2001 Christopher Faylor <cgf@cygnus.com>
8927
8928 *ini.h: Reapply 2001-06-25 changes.
8929 * choose.cc (add_required): Ditto. Default to "Keep" state if
8930 UNINSTALL and product is installed. Default to curr state if SKIP,
8931 etc.
8932 (keep_or_skip): New function. Returns skip or keep state depending on
8933 installed state of package.
8934 (default_trust): Use keep_or_skip to set state.
8935 (_view::insert_pkg): Use calloc to allocate lines.
8936 (set_view_mode): Adapt 2001-06-25 change to set_full_list here.
8937
8f53e82a
RC
8938Sat Jun 30 11:01:00 2001 Robert Collins <rbtcollins@hotmail.com>
8939
1fb09149 8940 * choose.cc: Remove globals full_list, headers, package_indexes and
8f53e82a
RC
8941 nindexes.
8942 Add globals cat_headers, pkg_headers and chooser.
8943 (add_required): New function.
8944 (paint): Use the chooser for header details.
8945 Call into the chooser to paint each line.
1fb09149 8946 (list_click): Use new global variables.
8f53e82a
RC
8947 Call into the chooser to handle the click.
8948 Repaint the entire view if packages have been added or removed.
8949 (note_width): Get passed a headers struct rather than using a global
8950 variable.
8951 (fill_missing_category): New function.
8952 (default_trust): Skip non-"Required" or "Misc" packages.
8953 (pick_line::set_line (Package *)): New function.
8954 (pick_line::set_line (Category *)): New function.
8955 (pick_line::paint): New function.
8956 (pick_line::click): New function.
8957 (_view::_view): New function.
8958 (_view::set_view_mode): New function.
8959 (_view::mode_caption): New function.
8960 (_view::set_headers): New function.
8961 (_view::init_header): New function.
8962 (_view::insert_pkg): New function.
8963 (_view::insert_category): New function.
8964 (_view::insert_at): New function.
8965 (_view::insert_under): New function.
8966 (_view::clear_view): New function.
8967 (viewsplusplus): New function.
8968 (_view::client): New function.
8969 (set_view_mode): Use new chooser functionality.
8970 (set_full_list): Use new global variables.
8971 (create_listview): Instantiate chooser.
8972 Remove all hardcoded headers[] code.
8973 (dialog_cmd): On trust changes, check dependencies.
8974 (getcategorybyname): New function.
8975 (getpackagecategorybyname): New function.
8976 (scan2): Use case-insensitive package comparison.
8977 (do_choose): Use fill_missing_category ().
8978 Show some category data.
8979 * ini.h: Protect against multiple inclusion.
8980 (views) New enum.
8981 (_CategoryPackage): New struct.
8982 (_Category): New struct.
8983 (_Package): Change category to Category * from char *.
8984 (extern Category category): New global variable.
8985 (extern in ncategories): Ditto.
8986 (getcategorybyname): New prototype.
8987 (catpackagecategorybyname): New prototype.
8988 (register_category): New prototype.
8989 (add_category): New prototype.
8990 * iniparse.y: Parse multiple categories per package.
2dada532
CF
8991 (category): New global variable.
8992 (ncategories): New global variable.
8f53e82a
RC
8993 (new_package): Compare package against NULL, not 0.
8994 (new_requirement): Source formatting fix.
8995 (register_category): New function.
8996 (add_category): New function.
8997 * res.rc: Change IDC_CHOOSE_FULLPART to IDC_CHOOSE_VIEW.
8998 IDC_CHOOSE_VIEWCAPTION: New control.
8999 * resource.h: Change IDC_CHOOSE_FULLPART to IDC_CHOOSE_VIEW.
9000 IDC_CHOOSE_VIEWCAPTION: New control.
9001 Increment _APS_NEXT_CONTROL_VALUE.
9002
26a27c14
CF
9003Mon Jun 25 00:56:37 2001 Michael A Chase <mchase@ix.netcom.com>
9004
e19ad6a3 9005 * choose.cc (paint): Wrap excessively long lines.
26a27c14
CF
9006 (list_click): Ditto.
9007 (create_listview): Ditto.
9008 (do_choose): Ditto. Replace TABs and remove CRs in lines written to
9009 setup.log.full. Allow "Yes" for source exists in setup.log.full when
9010 installing from local directories.
9011
97312777
CF
9012Mon Jun 25 00:56:37 2001 Christopher Faylor <cgf@cygnus.com>
9013
5f9f0d8d
CF
9014 * choose.cc (set_action): Only clear srcpicked when moving to next
9015 state. Allow source installation if it exists in the current "trust"
9016 state. Don't move to skip state when package is installed.
97312777
CF
9017 (list_click): Don't allow source clicking when no source is available.
9018 (set_full_list): Display package when not is_full_action.
9019 * ini.h (is_full_action): Define.
9020
72fd1d1e
CF
9021Sun Jun 17 12:06:14 2001 Christopher Faylor <cgf@cygnus.com>
9022
9023 * install.cc (check_for_old_cygwin): New function. First stab at
9024 checking for old cygwin versions.
9025 (do_install): Call check_for_old_cygwin if there were no errors during
9026 the install.
9027
41ac91b5 9028Sat Jun 16 11:33:51 2001 Michael A Chase <mchase@ix.netcom.com>
86202506
CF
9029
9030 * choose.cc (_Info::_Info): Test _source paramenter for non-NULL rather
9031 than zeroed "source" element.
9032
80429b97
CF
9033Fri Jun 15 20:54:43 2001 Christopher Faylor <cgf@cygnus.com>
9034
9035 * choose.cc (scan2): Insert unknown tar archives, found on disk, into
9036 the highest available "hole" in the trust array.
9037
654ea642
CF
9038Fri Jun 15 00:20:48 2001 Christopher Faylor <cgf@cygnus.com>
9039
9040 * choose.cc (set_existence): Use pointer method for indexing in trust
9041 array.
9042 (create_listview): Ditto.
9043 (scan2): Ditto. Also, use consistent variable name for indexing into
9044 trust array.
9045 * ini.h (Package): Reorganize info array for easier scanning.
9046
e98d90bd
CF
9047Fri Jun 15 00:01:51 2001 Christopher Faylor <cgf@cygnus.com>
9048
9049 * choose.cc (isinstalled): Eliminate special download only test.
9050 (set_action): Don't move to next state if in ACTION_SAME range and not
9051 incrementing.
9052 (choose_caption): Display "Retrieve" rather than "Reinstall" when just
9053 downloading.
9054 (do_choose): Sort packages after all packages have been read.
9055 Accomodate the fact that first element in trust array is empty so that
9056 log files don't report the wrong trust value.
9057 * iniparse.y (new_package): Malloc space for package name or suffer
9058 memory corruption.
9059
38c97581
CF
9060Thu Jun 14 22:43:59 2001 Robert Collins <rbtcollins@hotmail.com>
9061
9062 * ini.h (Dependency): New structure. Declare new function.
58b12a06
MB
9063 * inilex.l (yylex): Detect new setup.ini options - category and
9064 requires.
38c97581
CF
9065 * iniparse.y: Declare new setup.ini token values.
9066 (yyparse): Parse new token values.
9067 (new_requirement): New function.
9068
9069Thu Jun 14 22:43:26 2001 Christopher Faylor <cgf@cygnus.com>
9070
9071 * choose.cc (read_installed_db): Eliminate obsolete code.
9072
3ae6c15c
CF
9073Thu Jun 14 22:11:53 2001 Christopher Faylor <cgf@cygnus.com>
9074
9075 * choose.cc (set_action): Set trust on "redo".
9076 (_Info::_Info): New constructor.
9077 (read_installed_db): Use new constructor. Use trusts type for
9078 iterator.
9079 * ini.h (struct _Info): Label struct, add constructor.
9080 (Package): Make installed_ix a type 'trusts.'
9081 * install.cc (uninstall_one): Unset any installed info for current
9082 package.
9083 (install_one): Allocate new Info struct for installed reflecting new
9084 installed info.
9085 (do_install): Don't output line to installed.db if package is being
9086 uninstalled.
9087
9c0a9876
CF
9088Thu Jun 14 20:33:01 2001 Robert Collins <rbtcollins@hotmail.com>
9089
9090 * choose.cc (getpkgbyname): Use consistent method for scanning package
9091 array.
9092
68b27c12
CF
9093Wed Jun 13 23:33:08 2001 Christopher Faylor <cgf@cygnus.com>
9094
9095 * choose.cc: Add some comments.
9096 (getpkgbyname): Use strcasecmp for comparisons.
9097
07108cc2
CF
9098Wed Jun 13 16:07:00 2001 Christopher Faylor <cgf@cygnus.com>
9099
f0984dcb 9100 * install.cc (do_install): Avoid checking for download action if
07108cc2
CF
9101 package wasn't currently retrieved.
9102
c46a33a9
CF
9103Wed Jun 13 11:27:22 2001 Christopher Faylor <cgf@cygnus.com>
9104
9105 * choose.cc: Eliminate extra array throughout. Use element in package
9106 structure instead. Use pointers rather than array indexes where
9107 appropriate.
9108 (set_action): New function to set next action based on current.
9109 (choose_caption): New function. Returns display caption.
9110 (check_existence): Change arguments. Use pointer to 'info' structure.
9111 (set_existence): Use pointer rather than array index.
9112 (default_trust): Use trusts enum for second argument.
9113 (set_full_list): Honor exclude element in package structure.
9114 (build_labels): Eliminate.
9115 (base): Make global. Use const char * argument.
9116 (get_package_version): Eliminate.
9117 (getpkgbyname): New function.
9118 (read_installed_db): Use parse_filename to get version info.
9119 * desktop.cc (make_passwd_group): Use getpkgbyname function.
9120 * download.cc (get_file_size): const argument.
9121 (do_download): Use is_download_action to determine when something
9122 should be downloaded.
9123 * filemanip.h: Add some functions.
9124 * ini.cc (do_ini): Use NULL rather than 0 for pointer assignment.
9125 * ini.h: Use enums for actions and trusts.
9126 (is_download_action): New macro.
9127 (is_upgrade_action): Ditto.
9128 (is_uninstall_action): Ditto.
9129 (struct Package): Add new fields.
9130 * inilex.l (yylex): Detect new setup.ini options.
9131 * iniparse.y: Declare new tokens.
9132 (yyparse): Detect exclude keyword. Fill out version field even if
9133 version == 0.
9134 (new_package): Use greater granularity when allocating package array to
9135 avoid repeated calls to realloc.
9136 * install.cc (exists): const argument.
9137 (uninstall_one): Take pkg argument.
9138 (install_one): Ditto. Eliminate unneeded arguments which can be
9139 derived from package info.
9140 (do_install): Iterate over package array using a pointer. Use
9141 is_download_action to control when package should be downloaded.
9142 * tar.cc (tar_open): const argument.
9143 * tar.h: Refloect const argument.
9144
7cc06fd3
CF
91452001-05-31 Michael Chase mchase@ix.netcom.com
9146
9147 * main.cc (WinMain): Add setup version to starting setup.log entry
9148
9522028b
CF
9149Tue May 29 21:37:58 2001 Yukihiko Sohda <sohda@is.titech.ac.jp>
9150
9151 * inilex.l: Add + to list of valid string characters.
9152
e9b1aaa7
CF
9153Mon May 28 20:54:50 2001 Christopher Faylor <cgf@cygnus.com>
9154
9155 * Makefile.in: Remove more stuff in the clean target.
9156
8e1299fa
CF
9157Mon May 28 18:24:59 2001 Christopher Faylor <cgf@cygnus.com>
9158
9159 * Makefile.in: Correctly generate iniparse.h.
9160
85553593
CV
9161Tue Mar 6 19:14:00 2001 Corinna Vinschen <corinna@vinschen.de>
9162
9163 * geturl.cc (get_url_to_file): Add parameter `allow_ftp_auth'.
9164 * geturl.h: Change declaration of `get_url_to_file' accordingly.
9165 * netio.cc (NetIO::NetIO): Add parameter `allow_ftp_auth'.
9166 Set member `ftp_auth'.
9167 (NetIO::open): Add parameter `allow_ftp_auth'. Use it in calls
9168 to constructors of derived classes.
9169 (NetIO::get_ftp_auth): New method.
9170 * netio.h: Change class definition accordingly.
9171 * nio-ftp.cc (NetIO_FTP::NetIO_FTP): Add parameter `allow_ftp_auth'.
9172 Take global variables `net_ftp_user' and `net_ftp_passwd' into account.
9173 Add code for ftp authentication retry.
9174 * nio-ftp.h: Change class definition accordingly.
9175 * nio-http.cc (NetIO_HTTP::NetIO_HTTP): Add parameter `allow_ftp_auth'.
9176 Add code for ftp authentication retry in case of proxy connection.
9177 * nio-http.h: Change class definition accordingly.
9178 * res.rc: Add FTP authentication dialog.
9179 * resource.h: Add new constants used in res.rc.
9180 * state.h: Add variables `net_ftp_user' and `net_ftp_passwd'.
9181
c4174b9c
CF
9182Sun May 27 17:12:23 2001 Christopher Faylor <cgf@cygnus.com>
9183
9184 * res.rc (IDD_SPLASH): Add a copyright year.
9185
0af2d779
CF
9186Sun May 27 15:42:18 2001 Christopher Faylor <cgf@cygnus.com>
9187
9188 * Makefile.in: Make iniparse.y produce a c++ file.
9189 * choose.cc (set_existence): Revert 2001-05-27 change.
9190 * ini.cc: Remove "C" from declaration of yyparse.
9191 * iniparse.y (yyparse): Fill out version field by default when a binary
9192 install is detected and no version has been set yet.
9193 * install.cc (do_install): Mount things earlier so that we can use
9194 proper mount table settings. Don't remove mounts since they are now
9195 honored.
9196 * mount.cc (create_mount): Reread the mount table after establishing a
9197 new mount.
9198 (read_mounts): Explicitly clear root_here to allow multiple uses of
9199 this function. Ensure that there is no garbage in the table when we've
9200 exhausted all of the mounts in the registry.
9201 (cygpath): Accomodate ./ in path.
9202
85b43844
CF
9203Sun May 27 02:59:07 2001 Christopher Faylor <cgf@cygnus.com>
9204
0af2d779
CF
9205 Use parse_filename method to parse filenames throughout. Use
9206 get_root_dir to retrieve the current root directory throughout. Set
9207 const in argument list, where appropriate, throughout.
9208 * choose.cc (set_existence): Detect case of uninstalled package with no
9209 version.
85b43844
CF
9210 (parse_filename): New function.
9211 * filemanip.h (fileparse): New structure.
9212 * mount.cc (read_mounts): Remember where we found the root mount.
9213 (set_root_dir): New function.
9214 (get_root_dir): Ditto.
9215 * mount.h: Declare new functions.
9216 * site.cc (get_root_dir_now): Renamed from get_root_dir.
9217 (save_site_url): Use new function name.
9218 (get_initial_list_idx): Ditto.
9219
08f8c762
CF
9220Sat May 26 21:23:59 2001 Christopher Faylor <cgf@cygnus.com>
9221
9222 * choose.cc: Use a constant throughout to deal with chooser icon
9223 length.
9224 * res.rc (IDD_CHOOSE): Increase size of chooser box.
9225
47f8d8b3
CF
92262001-05-07 Brian Keener <bkeener@thesoftwaresource.com>
9227
9228 * choose.cc (do_choose): Fix incorrect assignment of trust setting to
9229 use when Redownload or Sources Only selected.
9230
6a748750
CF
9231Thu May 10 22:35:59 2001 Christopher Faylor <cgf@cygnus.com>
9232
9233 Reformat file after botched patch formatting.
9234 * choose.cc (which_trust): Eliminate variable.
9235 (default_trust): Don't set which_trust.
9236 (do_choose): Use selected trust when reinstalling or installing source.
9237
a351e48c
CF
9238Thu May 10 21:04:18 2001 Christopher Faylor <cgf@cygnus.com>
9239
9240 Change concat to cygpath throughout.
9241 Change map_filename to cygpath throughout.
9242 * concat.cc (vconcat): New function.
9243 (concat): Use vconcat.
9244 * concat.h: Reflect above.
9245 * install.cc (map_filename): Eliminate.
9246 (install_one): Free dest_file.
9247 * mount.cc (find2): Expect input key to be pointing to mount record.
9248 (in_table): New function.
9249 (is_admin): Move from root.cc.
9250 (read_mounts): New function.
9251 (path_prefix_p): New function.
9252 (cygpath): New function.
9253 * mount.h: Define new functions and structure.
9254 * root.cc (in_table): Move to mount.cc.
9255 (do_root): Call read_mounts to initialize root stuff and mount table.
9256 * site.cc (get_root_dir): Ditto.
9257
e227ee24
CF
92582001-05-09 Matt Hargett <matt@use.net>
9259
9260 * Makefile.in: Remove *.rc from clean.
9261
25fd2965
CF
9262Tue May 8 23:33:38 2001 Christopher Faylor <cgf@cygnus.com>
9263
9264 * choose.cc (scan2): Fix incorrect setting of TRUST_CURR rather than
9265 TRUST_PREV which produced "0" versions.
9266
42bf5b92
CF
92672001-05-07 Brian Keener <bkeener@thesoftwaresource.com>
9268
9269 * resource.h: Add new field IDC_CHOOSE_INST_TEXT. Modify
9270 _APS_NEXT_CONTROL_VALUE to account for addition of
9271 IDC_CHOOSE_INST_TEXT.
9272 * res.rc (IDD_CHOOSE): Modify choose dialog to use new field
9273 IDC_CHOOSE_INST_TEXT for screen text. Modify choose Dialog to allow
9274 hot keys to select Prev, Curr, Exp.
9275 * ini.h: Add new actions for ACTION_REDO and ACTION_SRC_ONLY. Modify
9276 define for LOOP_PACKAGES to include new actions ACTION_REDO and
9277 ACTION_SRC_ONLY.
9278 * choose.cc: Add new Trusts for TRUST_REDO and TRUST_SRC_ONLY.
9279 (paint): Modify to check TRUST_SRC_ONLY when determining Bitmap for
9280 source Checkbox to use.
9281 (build_labels): Add logic to allow for selection of Source only
9282 Download/ReDownload/Install/Reinstall and also to Redownload/Reinstall
9283 current version binary.
9284 (dialog_proc): Add conditional display for file selection prompt based
9285 on download vs install using IDC_CHOOSE_INST_TEXT.
9286 (do_choose): Add new logic for TRUST_REDO and TRUST_SRC_ONLY selection
9287 and modify logic for TRUST_UNINSTALL, TRUST_KEEP, and TRUST_NONE to
9288 handle the instance where Source Download/Install was selected. Modify
9289 log file to store appropriate information regarding Action selected and
9290 the new actions that were added (I.E.: ACTION_REDO and
9291 ACTION_SRC_ONLY).
9292 * download.cc: Add include for <unistd.h> and "port.h".
9293 (download_one): Modify parameter list to include the selected action
9294 for the file to be downloaded. Modify size check against expected size
9295 to include check for ACTION_REDO and ACTION_SRC_ONLY. Modify rename of
9296 .tmp file to also remove the destination file if exists due to ability
9297 to redownload source and binary now.
9298 (do_download): Modify to also use ACTION_REDO and ACTION_SRC_ONLY in
9299 calculation of Download Bytes. Modify to also use ACTION_REDO and
9300 ACTION_SRC_ONLY in determining files selected for download.
9301 * install.cc (uninstall_one): Add check to treat a Reinstall like an
9302 upgrade so current version will be uninstalled prior to reinstall.
9303 (do_install): Add logic to handle ACTION_REDO and ACTION_SRC_ONLY for
9304 uninstalling and installing binary and source packages.
9305 * desktop.cc (make_passwd_group): Modify logic to account for a Source
9306 only cygwin install when checking for cygwin to determine need for
9307 mkpasswd and mkgroup.
9308
9309Mon May 7 23:33:30 2001 Matt Hargett <matt@use.net>
8a09aa99
CF
9310
9311 * winsup/cinstall/res.rc: Added accelerators and improved focus order.
9312 Removed WS_DISABLED from "OK" buttons to accomodate default focus
9313 changes in net.cc and source.cc.
9314 * winsup/cinstall/net.cc (dialog_proc): If no radio button is selected,
9315 a default is selected.
9316 * winsup/cinstall/source.cc (dialog_proc): Ditto.
9317 (check_if_enable_next): Removed. No longer needed since a radio button
9318 will always be selected.
9319 (load_dialog): Removed call to check_if_enable_next.
9320 (dialog_cmd): Ditto. Also added default to switch.
9321
87bdba0c
CF
9322Tue Apr 24 23:42:02 2001 Christopher Faylor <cgf@cygnus.com>
9323
9324 * res.rc: Resize affected text.
9325
8293fc16
CF
9326Tue Apr 24 23:35:31 2001 Christopher Faylor <cgf@cygnus.com>
9327
9328 * net.cc (do_net): Default to direct download.
87bdba0c 9329 * res.rc: Move default selections to the top.
8293fc16 9330
ed96c6da
EB
93312001-04-18 Earnie Boyd <earnie@users.sourceforge.net>
9332
9333 * win32.h: Remove the definitions for _UNION_NAME and _STRUCT_NAME.
9334 Must now include <windows.h> and not the pieces.
9335 * choose.cc (create_listview): Clean up type mismatch problems.
9336 * dialog.h (NEXT(id)): Ditto.
9337 * geturl.cc (dialog): Ditto.
9338 * install.cc (dialog): Ditto.
9339 * splash.cc (load_dialog): Ditto.
9340
fe94cc29
CF
9341Wed Apr 18 18:59:21 2001 Christopher Faylor <cgf@cygnus.com>
9342
9343 * tar.cc (class gzbz): Define dummy virtual functions.
9344
fb087b80
CF
9345Wed Apr 18 16:01:21 2001 Christopher Faylor <cgf@cygnus.com>
9346
9347 * Makefile.in: Add bz2 include/library support.
9348 * filemanip.h: New file.
fe94cc29
CF
9349 * choose.cc (find_tar_ext): New function. Returns TRUE if .tar.gz or
9350 .tar.bz2 found.
fb087b80
CF
9351 (scan2): Reorganize to use find_tar_ext, accomodating .bz2 extension.
9352 (read_installed_db): Ditto.
9353 (do_choose): Ditto.
9354 * fromcwd.cc (found_file): Ditto.
9355 (do_fromcwd): Ditto.
9356 * tar.cc (class gzbz): New super class for uncompression support.
9357 (gz): New class for gzip support.
9358 (bz): New class for bzip2 support.
9359 (tar_open): Use gzbz class to control file opening.
9360 (tar_ftell): Ditto for returning position in file.
9361 (skip_file): Ditto for reading file.
9362 (tar_next_file): Ditto.
9363 (tar_read_file): Ditto.
9364 (tar_close): Ditto for close.
9365
9366 * zlib/configure.in: Force NM substitution.
9367
9368 * source.cc (do_source): Default to "Install from Internet".
9369
88bcaf07
CF
93702001-03-16 Brian Keener <bkeener@thesoftwaresource.com>
9371
9372 * nio-file.cc (NetIO_File::NetIO_File): Use `get_file_size' instead of
9373 `stat'.
9374 * choose.cc (list_click): Correct inability to select source code for
9375 download.
9376 (scan2): Modify to skip source tarballs when scanning disk for
9377 installable packages.
9378
ef45c299
CV
93792001-03-10 Chris Abbey <chris_abbey@yahoo.com>
9380
9381 * install.cc: install sources into /usr/src instead
9382 of /, also include the sizes of source tarballs
9383 in total_bytes.
9384 * download.cc: include sizes of source tarballs in
9385 total_download_bytes.
9386
9fe1181b
CV
9387Tue Mar 6 19:31:00 2000 Corinna Vinschen <corinna@vinschen.com>
9388
9389 * download.cc (get_file_size): Remove `static'.
9390
2bfdb848
CV
9391Tue Mar 6 19:11:00 2000 Corinna Vinschen <corinna@vinschen.com>
9392
9393 * tar.cc (tar_open): Use `get_file_size' instead of `stat'.
9394
60c632b3
CV
93952001-03-06 Brian Keener <bkeener@thesoftwaresource.com>
9396
9397 * choose.cc (paint): Modify message for nothing to download vs
9398 nothing to install/update based on installation method.
9399 (list_click): Modify to skip versions in selection process if
88bcaf07 9400 installing from local directory and installation file does not exist.
60c632b3
CV
9401 Also leaves Source Action set to N/A if the source file does not exist
9402 and installing from local directory.
9403 (check_existence): New method to check current existence of installation
9404 files based on selected installation method.
9405 (set_existence): New method to set the current existence of installation
9406 files based on selected installation method.
9407 (best_trust): Modify decision process for best trust to base decision on
9408 current trust selected (IE: Prev, Curr, or Test), existence of file and
9409 installation method selected.
9410 (default_trust): Add logic to capture the current trust level and the
9411 trust selected for the given package.
88bcaf07 9412 (set_full_list): Expand decision criteria for displaying a package in
60c632b3
CV
9413 the selection list to include file existence/non-existence and selected
9414 installation method.
9415 (build_labels): Modify criteria for label addition to include
9416 installation method and file existence/non-existence.
88bcaf07 9417 (create_listview): Modify to establish package trust level for each
60c632b3
CV
9418 package before setting up the display list. Also modification to set
9419 current trust button as the default.
88bcaf07 9420 (dialog_cmd): Set response for Prev, Curr, Test button push to perform
60c632b3
CV
9421 a reset of the selection list in addition to setting the default trust.
9422 (get_package_version): New method to provide reusable code for
9423 determining the package version from the file name for a specified
9424 trust.
9425 (scan2): Modify to use new method get_package_version and
9426 also enhance handling of the build for the structures package and
9427 extra.
9428 (read_installed_db): Modify to use the new method
9429 get_package_version and also enhance handling of the build for the
9430 structures package and extra.
88bcaf07 9431 (do_choose): Add additional initialization of package and extra
60c632b3
CV
9432 structures. Modify to use read_installed_db all the time despite
9433 install method. Modify output to setup.log.full log file to increase
9434 readability by adding additional spacing, expanded code and available
9435 versions.
9436 * ini.h: Add new fields install_exists, source_exists and
88bcaf07 9437 partial_list_display to the structure definition for package.
60c632b3
CV
9438 * res.rc (IDD_CHOOSE): Modify choose dialog Prev, Curr, and Test
9439 pushbuttons by replacing with Radio Buttons thus allowing the
9440 operator to better determine which is selected.
9441
2f9645a1
CV
94422001-02-20 Brian Keener <bkeener@thesoftwaresource.com>
9443
88bcaf07 9444 * download.cc (do_download): Add new variables total_download_bytes and
2f9645a1
CV
9445 total_download_bytes_sofar for download progress meter. Add loop
9446 to accumulate the total bytes to download from the selected packages.
9447 * geturl.cc: Add state.h and diskfull.h to include list. Add new
9448 variables gw_iprogress, gw_pprogress, gw_progress_text,
9449 gw_pprogress_text, and gw_iprogress_text to allow for addition of
9450 total packages download progress meter and disk full percent
9451 progress meter. Add variables total_download_bytes and
9452 total_download_bytes_sofar for use by progress meters.
88bcaf07
CF
9453 (dialog_proc): Add new variables gw_iprogress, gw_pprogress,
9454 gw_progress_text, gw_pprogress_text, and gw_iprogress_text to
9455 allow for addition of total packages download progress meter and disk
9456 full percent progress meter.
2f9645a1
CV
9457 (init_dialog): Ditto.
9458 (progress): Ditto.
9459 (get_url_to_file): Ditto.
9460 * geturl.h: Add external definition for total_download_bytes and
9461 total_download_bytes_sofar.
88bcaf07 9462 * res.rc: Add two additional progress meters (IDC_DLS_IPROGRESS)
2f9645a1
CV
9463 and (IDC_DLS_PPROGRESS) and three text objects (IDC_DLS_PROGRESS_TEXT)
9464 and (IDC_DLS_IPROGRESS_TEXT, IDC_DLS_PPROGRESS_TEXT) for use in the
9465 download meters.
88bcaf07 9466 * resource.h: Add new fields for progress meters and text and update
2f9645a1
CV
9467 _APS_NEXT_CONTROL_VALUE.
9468
b41962a3
CV
9469Wed Feb 21 13:05:00 2000 Corinna Vinschen <vinschen@redhat.com>
9470
9471 * download.cc (get_file_size): Check for INVALID_HANDLE_VALUE instead
9472 for NULL.
9473
9474Wed Feb 21 11:21:00 2000 Corinna Vinschen <vinschen@redhat.com>
01954c34
CV
9475
9476 * download.cc (download_one): Add missing parenthesis.
9477
88a77116
CV
9478Mon Feb 19 18:59:00 2000 Corinna Vinschen <vinschen@redhat.com>
9479
9480 * download.cc (get_file_size): New function. Eliminates the need
9481 to call `stat'.
9482 (download_one): Call `get_file_size' instead of `stat'. This
9483 workarounds a problem with mingw's `stat' call.
9484
577f35ed
EB
94852001-02-07 Earnie Boyd <earnie@users.sourceforge.net>
9486
9487 * Makefile.in: (%.o: %.rc): Specify --include-dir $(w32api_include).
9488 This is to allow cinstall to build with 2.95.2-7 and to make the
9489 use of headers consistent.
9490
38f5563e
DD
94912000-12-26 Earnie Boyd <earnie_boyd@yahoo.com>
9492
9493 * Makefile.in (autoload.o): Add target to specify -fno-inline-functions
9494
c0a7e0f2
DD
9495Tue Dec 26 03:46:00 2000 Matt Hargett <matt@use.net>
9496
9497 * winsup/cinstall/res.rc: Added accelerators and improved focus
9498 order.
9499
72826a5b
CF
95002000-12-10 Egor Duda <deo@logos-m.ru>
9501
9502 * choose.cc (paint): Use system background color for text output.
9503
9504Sun Dec 10 19:05:25 2000 Christopher Faylor <cgf@cygnus.com>
9505
9506 * Makefile.in: Use CXX for linking and for compiling .cc files.
9507 * configure.in: Find correct c++ compiler.
9508 * configure: Regenerate.
9509
67bebcb5
DD
95102000-11-17 DJ Delorie <dj@redhat.com>
9511
9512 * splash.cc (load_dialog): Make message more obvious.
9513 * res.rc: Ditto.
9514
25fb9139
CF
9515Fri Nov 17 17:15:21 2000 Christopher Faylor <cgf@cygnus.com>
9516
9517 * Makefile.in: Use g++ to link so that libstdc++.a gets used. This is
9518 necessary for newer compilers.
9519
ef2007fd
CV
9520Wed Nov 9 2:19:00 2000 Corinna Vinschen <vinschen@redhat.com>
9521
9522 * desktop.cc: Include "ini.h" and "version.h".
9523 (make_passwd_group): Skip the function on 9x/ME boxes when an
9524 older version of Cygwin has been installed which doesn't
9525 support mkpasswd/mkgroup on 9x/ME.
9526 * install.cc: Move the `LOOP_PACKAGES' and `pi' macros to...
9527 * ini.h: ...here.
9528
277b4d56
CV
9529Wed Nov 8 17:10:00 2000 Corinna Vinschen <vinschen@redhat.com>
9530
9531 * desktop.cc (make_passwd_group): Don't exit when started
9532 on 9x/ME since mkpasswd/mkgroup are usable on 9x/ME now.
9533
f8a6415f
DD
9534Sun Nov 5 12:51:42 2000 Jason Tishler <jt@dothill.com>
9535
9536 * install.cc (do_install): Add call to set_cygdrive_flags to sync
9537 the mount modes.
9538 * mount.cc (set_cygdrive_flags): New function.
9539 (get_cygdrive_flags): Ditto.
9540 (default_cygdrive): Ditto.
9541 (set_cygdrive_flags): Ditto.
9542 * mount.h: Add prototype for set_cygdrive_flags.
9543
3b9077d4
DD
95442000-10-23 DJ Delorie <dj@redhat.com>
9545
9546 * ini.h: add source actions
9547 * fromcwd.cc: check for available sources
9548 * res.rc: add checkbox bitmaps
9549 * resource.h: ditto
9550 * check-*.bmp: new
9551 * choose.cc: add source column
9552 * download.cc: download sources if called for
9553 * install.cc: [un]install sources too
9554
1b1b33ac
DD
95552000-10-22 DJ Delorie <dj@redhat.com>
9556
9557 * choose.cc (build_labels): Don't skip TRUST_PREV completely; only
9558 ignore it wrt full_list if there's already a version installed.
9559 (do_choose): Sort the list.
9560 (package_sort): New.
9561
2a1a01e0
DD
95622000-10-12 DJ Delorie <dj@redhat.com>
9563
9564 * res.rc: Add more error strings.
9565 * resource.h: Ditto.
9566 * iniparse.y (new_package): re-initialize if needed.
9567 * download.cc (do_download): Keep track of errors; notify and
9568 allow retry.
9569 * install.cc (do_install): Ditto.
9570
1a9886fe
DD
95712000-10-05 DJ Delorie <dj@redhat.com>
9572
9573 * Makefile.in: fix %.cc rule
9574
40aef45e
DD
95752000-10-04 DJ Delorie <dj@redhat.com>
9576
9577 * desktop.cc: quote HOME and USER, don't . ./.profile
9578
9579 * choose.cc (build_labels): don't include in partial list just
9580 because there's a *previous* version available.
9581
9582 * install.cc (do_install): if installing from local directory with
9583 setup.ini and the file isn't found, look in "." also. Note errors.
9584
dd3f7f9b
DD
95852000-10-02 DJ Delorie <dj@redhat.com>
9586
9587 * ini.cc (do_ini): save setup.ini locally
9588
95892000-10-02 Chris Abbey <cabbey@bresnanlink.net>
9590
9591 * desktop.cc: quote escapes in prompt
9592
fee2a8d0
DD
95932000-10-02 Jason Tishler <jt@dothill.com>
9594
9595 * root.cc (is_admin): New function.
9596 (read_mount_table): Check for administrative priviledges and set
9597 installation scope as appropriate.
9598
a03db251
DD
95992000-09-28 DJ Delorie <dj@redhat.com>
9600
9601 * nio-ftp.cc (ftp_line): handle continuations more robustly
9602
b151e01e 96032000-09-14 Brian Keener <bkeener@thesoftwaresource.com>
0b758d4c
DD
9604
9605 * res.rc: increased the size of the site dialog (IDD_SITE) & the
9606 corresponding list box to provide for more URL's to be listed.
9607 Modified the position of the Back, Next and Cancel buttons to
9608 correspond to the new size of the dialog.
9609
d07591a3
DD
96102000-09-13 DJ Delorie <dj@redhat.com>
9611
9612 * install.cc (do_install): update disk fullness once per package
9613 to improve performance
9614
9615 * choose.cc (create_listview): call ReleaseDC
9616
89725f30
DD
9617Mon Sep 11 22:40 2000 Harold L Hunt II <harold@compasstechnologies.com>
9618
9619 * mkdir.cc: Create directories when ERROR_FILE_NOT_FOUND is
9620 returned, as it seems Samba 2.0.6+ returns this instead of
9621 ERROR_PATH_NOT_FOUND
88bcaf07 9622
6fbc690d
CF
9623Mon Sep 11 19:35:24 2000 Christopher Faylor <cgf@cygnus.com>
9624
9625 * site.cc (get_initial_list_idx): Don't default to saved URL if it
9626 refers to sources.
9627
13d27274
DD
96282000-09-07 DJ Delorie <dj@redhat.com>
9629
9630 * splash.cc: use version.h, not local decl
9631 * res.rc: add "old version" message
9632 * resource.h: ditto
9633 * version.h: new
9634 * fromcwd.cc (canonicalize_version): make global
89725f30
DD
9635 * iniparse.y: add setup-version support, fix bug in blank line
9636 handling
9637
13d27274
DD
9638 * inilex.l: add [exp] as alias for [test], add setup-version
9639 * Makefile.in (version.c): add setup-version tag
9640
9641 * desktop.cc (do_desktop): remove 1.1 version number
9642 (do_desktop_setup): ditto
9643
9644 * ini.cc (do_ini): zero out package list just in case we redo it.
9645
8cfbc487
DD
96462000-09-07 Jeffrey Juliano <juliano@cs.unc.edu>
9647
9648 * choose.cc (list_click): Check for nindexes==0; if so, return.
9649
c92e1307
DD
96502000-09-06 Andrej Borsenkow <Andrej.Borsenkow@mow.siemens.ru>
9651
9652 * localdir.cc: new, local package directory selection dialog; cd
9653 into selected directory
9654 * Makefile.in (OBJS): add localdir.o
9655 * dialog.h: add prototype for do_local_dir
9656 * main.cc (WinMain): initialize local_dir to cwd; add call to
9657 do_local_dir
9658 * net.cc (dialog_cmd): make DO_LOCAL_DIR next dialog
9659 * source.cc (dialog_cmd): ditto
9660 * res.rc: add DO_LOCAL_DIR dialog; remove "current directory" from
9661 presented choices in IDD_SOURCE; add IDS_ERR_CHDIR error string
9662 * resource.h: defines for DO_LOCAL_DIR dialog; define IDS_ERR_CHDIR
9663 * root.cc (dialog_cmd): make DO_LOCAL_DIR previous dialog
9664 * state.h: add local_dir variable
9665
96662000-09-06 Brian Keener <bkeener@thesoftwaresource.com>
50225eae
DD
9667
9668 * desktop.cc: added logic to handle to the new dialog and to
9669 default the setting for the new checkboxes based on whether the
9670 desktop icon or start menu link already exist.
9671 (desktop_icon): correction to desktop directories for desktop icon
9672 creation. Additional logic added for Win95 which does not appear
9673 to have Common Directories so if Common selected and null uses
9674 normal directory.
9675 (start_menu): Additional logic added for Win95 which does not
9676 appear to have Common Directories so if Common selected and null
9677 uses normal directory.
9678 (do_desktop_setup): moved the saving of the icon, creation of the
9679 bat file, profile, passwd, Start Menu link and desktop shortcut to
9680 this method from do_desktop. Made the creation of the desktop
9681 icon and start menu link conditional on settings of new dialog
9682 created for desktop.
9683 * install.cc (do_install): changed next from IDD_S_DESKTOP to
9684 IDD_DESKTOP.
9685 * main.cc (WinMain): changed case IDD_S_DESKTOP to IDD_DESKTOP.
9686 * res.rc: added new resource to create a desktop dialog with 2
9687 checkboxes for creating the desktop icon and start menu link.
9688 * resource.h: changed IDD_S_DESKTOP to IDD_DESKTOP and added two
9689 new controls: IDC_ROOT_MENU and IDC_ROOT_DESKTOP for new dialog.
9690 * state.h: added root_menu and root_desktop for use in dialog.
9691
4a83b7b0
DD
96922000-08-29 DJ Delorie <dj@redhat.com>
9693
9694 * choose.cc (scan_downloaded_files): scan for existing files, so
9695 that the user only sees new downloads.
9696
9697 * nio-ie5.cc (NetIO_IE5): pre-check for wininet.dll, enable dial-up
9698 * site.cc (do_site): if we can't download the mirror list, go back
9699 to the net setup box to choose another transport.
9700 * autoload.c: add more functions
9701 * Makefile.in (ALL_DEP_LDLIBS): remove wininet.a
9702 * resource.h: add WININET message
9703
9704 * net.cc (do_net): no longer default to IE5
9705 * simpsock.h (class SimpleSocket): new, simplify socket operations
9706 * simpsock.cc: ditto
9707 * nio-http.h: new, for direct http protocol
9708 * nio-http.cc: ditto
9709 * nio-ftp.h: new, for direct http protocol
9710 * nio-ftp.cc: ditto
9711 * netio.cc (set_url): move initialization here to handle redirections
9712 (open): add direct http/ftp
9713 * netio.h (NetIO::set_url): new
9714
9715 * log.cc (log_save): create directory for log if needed
9716
9717 * hash.cc, hash.h: new
9718 * Makefile: add hash.o
9719 * choose.cc: enable "uninstall" option
9720 * download.cc: invert action test to accomodate uninstalling
9721 * ini.h: add ACTION_UNINSTALL
9722 * install.cc: add uninstall functionality
9723 * res.rc: make install tag changeable
9724 * resource.h: add uninstall resources
9725
9726 * res.rc: update mirror list URL
88bcaf07 9727
50f64a4b
DD
97282000-08-24 DJ Delorie <dj@redhat.com>
9729
89b1a15b
DD
9730 * log.cc, log.h: new files
9731 * Makefile.in (OBJS): add log.o
9732 * tar.cc: use exit_setup instead of exit
9733 * dialog.cc (fatal): use exit_setup instead of ExitProcess
9734 * msg.cc (fatal): ditto
9735 * install.cc (dialog_cmd): ditto
9736 * ini.cc (do_ini): ditto
9737 * main.cc (main): add logging
9738 * source.cc (do_source): ditto
9739 * root.cc (do_source): ditto
9740 * site.cc (do_site): ditto
9741 * other.cc (do_other): ditto
9742 * net.cc (do_net): ditto
9743 * choose.cc (do_choose): ditto
9744 * download.cc (do_download): ditto
9745 * install.cc (do_install): ditto
9746 * msg.cc (fatal): ditto
9747
9748 * res.rc: mark password boxes as *being* password boxes.
9749
58b12a06
MB
9750 * fromcwd.cc (canonicalize_version): use multiple buffers so that
9751 multiple calls won't use the same buffer.
50f64a4b
DD
9752 * choose.cc (create_listview): don't default to full list if no changes
9753 (base): return computed value, not temporary :-(
9754 (do_choose): don't use installed.db if we're only downloading.
9755
348860fa
DD
97562000-08-23 DJ Delorie <dj@redhat.com>
9757
9758 * nio-ie5.cc (NetIO_IE5): Fix authentication logic
9759 * nio-ie5.h (flush_io): new
9760 * netio.cc (load_dialog): note when we're initializing the dialog
9761 box, and ignore changes to the edit fields then.
9762
5f48f258
DD
97632000-08-21 DJ Delorie <dj@redhat.com>
9764
9765 * README: Update
9766
9767 * fromcwd.cc (found_file): don't remember the canonicalized version
9768
9769 * choose.cc (paint): print "nothing to do" message when list is empty.
9770 (build_labels): Use version "0.0" if no version is available.
9771 (create_listview): default to full list if nothing to install/update.
9772 (base): new, returns basename of file
9773 (read_installed_db): compare base names, not full paths
9774
713bbe5f
DD
97752000-08-11 DJ Delorie <dj@redhat.com>
9776
9777 * choose.cc: add new chooser dialog
9778 * fromcwd.cc: use IDD_CHOOSE
9779 * ini.cc: use IDD_CHOOSE
9780 * main.cc: use IDD_CHOOSE
9781 * ini.h: cosmetic changes
9782 * res.rc: add choose dialog, bitmaps
9783 * choose-spin.bmp: new
9784 * choose-rtarrow.bmp: new
9785 * resource.h: add choose dialog controls
9786
9787 * mount.cc: remove debug statement
88bcaf07 9788
2e9cbac5
DD
97892000-08-08 DJ Delorie <dj@redhat.com>
9790
9791 * Makefile.in (version.c): make version checking more robust
9792 * splash.cc (load_dialog): handle case where there's no version
9793
8507f105
DD
97942000-08-07 DJ Delorie <dj@redhat.com>
9795
9796 * (all): add cvsid tags
9797 * Makefile.in: generate version.c from ChangeLog, add splash.o
9798 * splash.o: new
9799 * res.rc: add splash screen
88bcaf07 9800
f5d0464b
DD
98012000-08-02 DJ Delorie <dj@redhat.com>
9802
4e8ff53f
DD
9803 * net.cc: remove proxy password code
9804 * res.rc: remove proxy user/pass from net, add auth dialogs
9805 * netio.cc,h: add sys/proxy auth methods
9806 * nio-ie5: use them, check for http status codes
9807 * state.h: add system authorization
9808
f5d0464b
DD
9809 * concat.cc (concat): canonicalize x:// to x:/ (exception to ://
9810 meaning an url)
9811
76cbfa85
DD
98122000-08-02 Norman Vine <nhv@yahoo,com>
9813
9814 * msg.cc (mbox): added MB_TOPMOST to MessageBox type flags
9815
e92c4436
DD
98162000-08-01 DJ Delorie <dj@redhat.com>
9817
bf74c544
DD
9818 * postinstall.cc (each): don't rename files we ignore
9819 (do_postinstall): set CYGWINROOT to root_dir, chdir there
9820
e92c4436
DD
9821 * desktop.cc: have /etc/profile call ~/.profile and ~/.bashrc
9822
a6100861
DD
98232000-07-31 DJ Delorie <dj@redhat.com>
9824
9825 * desktop.cc: reverse PATH so /usr/bin precedes /bin
9826
b11b49f3
DD
98272000-07-18 DJ Delorie <dj@redhat.com>
9828
a99bdfd8
DD
9829 * autoload.c: new, autoload dlls that might not be available.
9830 * Makefile.in (OBJS): add autoload.o
9831
9832 * res.rc: rewrite root options (text/binary, system/user) to be
9833 more obvious.
9834
b5b282c4
DD
9835 * site.cc (get_site_list): trim displayed URL, sort by domain
9836
9837 * net.cc (do_net): make IE5 default to checked, for now
9838
b11b49f3
DD
9839 * choose.cc (do_choose): sort packages correctly
9840 * ini.cc (do_ini): handle parse errors more gracefully
9841 (yyerror): ditto
9842 (fprintf): line buffer output
b5b282c4 9843 (do_ini): if we can't load setup.ini, go back to the site list.
b11b49f3
DD
9844 * ini.h: add "unknown" trust level
9845 * inilex.l: absorb unknown trust levels and key/value pairs,
9846 add line number logic
9847 * iniparse.y: handle parse errors more gracefully.
9848 * install.cc: skip packages with no valid install entry
9849
1fd6d0a2
DD
98502000-07-17 DJ Delorie <dj@cygnus.com>
9851
9852 * coding standards fixups, many files
9853 * mkdir.cc: warn about deletions *before* deleting them
9854
ed3e8b9b
DD
98552000-07-17 Jeff Juliano <juliano@cs.unc.edu>
9856
9857 * res.rc (IDD_OTHER_URL): reorder to give default focus to entry
9858
9859 * other.cc (dialog_cmd): save download site URL
9860 * site.cc (get_root_dir): new
9861 (save_mirror_site): new
9862 (dialog_cmd): save download site URL
9863 (get_site_list): make list big enough to add prev site
9864 (get_initial_list_idx): new, read last-used URL from file and
9865 append it to site_list
9866 (do_site): call get_initial_list_idx
9867
9868 * concat.cc (concat): avoid segfault when first parm is null
88bcaf07 9869
f57c332f
DD
98702000-07-13 DJ Delorie <dj@cygnus.com>
9871
9872 * postinstall.cc: new
9873 * Makefile.in: add postinstall.o
9874 * concat.h: add backslash ()
9875 * concat.cc: ditto
9876 * desktop.cc (etc_profile): don't do postinstall
9877 (backslash): moved to concat.cc
9878 (uexists): new
9879 (make_postinstall_script): run directly
9880 (do_desktop): chain to do_postinstall
9881 * dialog.h: add exit_msg, do_postinstall
9882 * download.cc: use exit_msg
9883 * install.cc: ditto
9884 * main.cc: add postinstall, exit_msg
9885 * resource.h: add postinstall
d6cda811 9886 * README: add more to-do items
f57c332f 9887
3a8e3956
DD
98882000-07-12 DJ Delorie <dj@cygnus.com>
9889
9890 * desktop.cc: add /etc/postinstall/ support
1a18aed7 9891 * install.cc: add more "standard" directories
3a8e3956 9892
e0c3d906
DD
98932000-07-11 DJ Delorie <dj@cygnus.com>
9894
9895 * desktop.cc: create /etc/profile
ad09bcd9
DD
9896 * desktop.cc: fix include syntax
9897 * Makefile.in: add auto-dependencies
24e259bb
DD
9898 * root.cc: support system vs user
9899 * desktop.cc: ditto
9900 * mount.h: ditto
9901 * mount.cc: ditto
9902 * install.cc: ditto
9903 * res.rc: ditto
9904 * resource.h: ditto
9905 * state.h: ditto
84d58d4c 9906 * desktop.cc: make sure we use backslashes, not slashes.
bf1d5889
DD
9907 * desktop.cc: don't set PATH in cygwin.bat, create /etc/passwd
9908 * geturl.cc: change math for percentage to avoid overflow
9909 * install.cc: ditto
9910 * download.cc: post "download complete" message.
9911 * root.cc: pre-fill in defaults if needed, don't start
9912 browse at root_dir unless it's set.
a3f48e18 9913 * desktop.cc: quote $PATH in case it has spaces in it
88bcaf07 9914
904d24fe
DD
99152000-07-10 DJ Delorie <dj@cygnus.com>
9916
9917 * Makefile.in: add desktop.o and mklink2.o
9918 * dialog.h: add do_desktop
9919 * install.cc: create standard directories, call do_desktop
9920 * res.rc: add cygwin.ico as a file also
9921 * desktop.cc: new, do shortcuts, batch files, and icons
9922 * mklink2.c: new, for COM
1ab805b8 9923 * README: update to-do list
904d24fe 9924
04d6e06b
DD
99252000-07-10 DJ Delorie <dj@cygnus.com>
9926
9927 * ini.cc (do_ini): don't worry about timestamps if we're not
88bcaf07 9928 actually installing.
04d6e06b 9929
5601a13d
DD
99302000-07-09 DJ Delorie <dj@cygnus.com>
9931
9932 * Makefile.in: add -I$(srcdir) for ini.h
9933
23c9e63c
DD
99342000-07-06 DJ Delorie <dj@cygnus.com>
9935
9936 * Replace everything with a new GUI version
9937 * zlib/gzio.c: add gzctell() for progress displays
9938
99392000-06-22 DJ Delorie <dj@cygnus.com>
9940
9941 * setup.c (tarx): re-add call to write_pkg()
9942
aa32874b
DD
99432000-06-07 DJ Delorie <dj@cygnus.com>
9944
9945 * cygcalls.c: new, call cygwin1.dll functions directly
9946 * cygcalls.h: header for same
9947 * Makefile.in: add cygcalls.[ch], remove mount/cygpath/umount
9948 exes, fix cinstall.rc dependencies.
9949 * path.c: remove unneeded code
9950 * setup.c: use cygcalls instead of xcreate_process.
9951 uncompress embedded files with zlib
9952 add "-d" for "download only"
9953 add "-h" for help
9954 postpone mount changes until very end
9955 add download progress indicators
9956 pack multi-column listings more
9957 auto-delete temp files
9958 customize banner message according to options
9959 prompt user for text/binary mounts
9960 add warnings about empty setup directory, root installs, etc
9961
99d1bf2d
DD
99622000-05-24 DJ Delorie <dj@cygnus.com>
9963
9964 * tar.c: New file; built-in tar using zlib.
9965 * tar.h: New file; header for same.
9966 * ctar.c: New file; test program for same.
9967 * Makefile.in: add built-in tar, remove tar.exe and gzip.exe
58b12a06
MB
9968 * path.c (pathcat): convert slashes and canonicalize, instead of
9969 aborting
99d1bf2d
DD
9970 * setup.c (tarx): add support for built-in tar
9971 (main): accept unix-style slashes, check root dir for drive letters,
58b12a06
MB
9972 warn about installing in /, make sure cwd is empty for internet
9973 installs, defer mounts to end of install, support built-in tar.
99d1bf2d 9974
55650749
CF
9975Fri May 19 23:44:37 2000 Christopher Faylor <cgf@cygnus.com>
9976
9977 Fix compiler warnings throughout.
9978 * pkg.c (init_pkgs): Make static 'stuff' global_pkgstuff for use in
9979 get_pkg_stuff.
9980 * setup.c: Make 'root' global.
9981 (istargz): Return pointer to "stem" of matched .tar.gz file.
9982 (tarx): Special case cygwin-20000301 to == cygwin-1.1.0.tar.gz. Remove
9983 bogus check_for_installed check.
9984 (recurse_dirs): Add preliminary support for .bat file execution.
9985 (create_uninstall): Eliminate unneeded parameter.
9986 (do_start_menu): Ditto.
9987 (mkmount): Ditto.
9988 (get_pkg_stuff): Ditto. Check for currently installed cygwin by
9989 scanning for the version number. Eliminate unneeded argument to
9990 create_uninstall.
9991 (getdownloadsource): Add 'name' to list of names rather than url.
9992 (main): Eliminate unneeded argument in get_pkg_stuff. Eliminate
9993 unneeded argument in mkmount and do_start_menu.
9994
f4dda8f0
DD
99952000-05-18 DJ Delorie <dj@cygnus.com>
9996
9997 * setup.c (optionprompt): allow multi-column, clean up message
9998 about more options, be more robust about user input.
9999 (getdownloadsource): make the mirror URL a macro.
10000 (main): do mounts after done prompting user.
10001
62844d84
CF
10002Tue May 2 00:56:41 2000 Christopher Faylor <cgf@cygnus.com>
10003
10004 * setup.c (cleanup): Inverse order of deletion stands a better chance
10005 of deleting cygpath.exe. Still seems to suffer from occasional races,
10006 though.
10007 (cleanup_on_signal): Perform convoluted dance to accomodate win95 and
10008 w2k.
10009 (output_file): Defend against an unlikely handle leak.
10010 (main): Don't set up signal handling until we have something special to
10011 do.
10012
ad6749c8
CF
10013Mon May 1 17:56:32 2000 Christopher Faylor <cgf@cygnus.com>
10014
10015 * path.c (kill_cygpath): Delete function.
10016 (exit_cygpath): Make more defensive so that it can be called at any
10017 time.
10018 (cygpath_pipe): Don't set up signal here. Do it in main().
10019 * setup.c (istargz): New function.
10020 (recurse_dirs): Look for *.gz pattern rather than *tar.gz since *tar.gz
10021 inexplicably fails on samba mounted partitions. Use istargz to match
10022 tar.gz tail.
10023 (processdirlisting) Use istargz to match tar.gz tail.
10024 (cleanup): Renamed from filedel.
10025 (cleanup_on_signal): New function. Called on CTRL-C.
10026 (main): Record handle of main thread so that it can be suspended when
10027 CTRL-C occurs. Set up cleanup_on_signal signal handler.
10028
460cf7b6
CF
10029Mon May 1 11:05:07 2000 Christopher Faylor <cgf@cygnus.com>
10030
10031 * setup.c (do_start_menu): Don't concatenate paths to already built
10032 paths.
10033
9e76799c
CF
10034Sun Apr 30 22:37:34 2000 Christopher Faylor <cgf@cygnus.com>
10035
10036 * path.c (exit_cygpath): Wait for subprocess to exit before returning.
10037 (cygpath_pipe): Don't call exit_cygpath. Let main atexit routine do
10038 that.
10039 * pkg.c (init_pkgs): Accept root argument. Make registry key "cygwin
10040 root"-specific.
10041 * setup.c (filedel): Call exit_cygpath here so that we can be assured
10042 that cygpath subprocess has died. This allows us to delete cygpath.exe
10043 and cygwin1.dll.
10044 (optionprompt): Initialize response to -1 so that second screen of
10045 mirrors will appear.
10046 (get_pkg_stuff): Don't attempt to use HKCLU. Pass root to init_pkgs.
10047 * setup.h: Reflect init_pkgs prototype change.
10048
2cf65e6e
CF
10049Sat Apr 29 23:53:30 2000 Christopher Faylor <cgf@cygnus.com>
10050
10051 * pkg.c (init_pkgs): Accept an argument to control what root registry
10052 key should be used.
10053 * setup.c (get_pkg_stuff): Use HKCLU registry key if default fails.
10054 * setup.h: Reflect init_pkgs prototype change.
10055
10056Sat Apr 29 23:27:14 2000 Christopher Faylor <cgf@cygnus.com>
10057
10058 * error.c (winerror): Respond to gcc warning.
10059 * path.c (cygpath_pipe): Ditto.
10060 * setup.c (filedel): Call sa_cleanup on deleteme.
10061 (create_shortcut): Coerce argument to eliminate compiler warning.
10062 (tarx): Use installed version of cygwin1.dll, overriding tar file name.
10063 (refmatches): New function. Tests if ref is contained in a list of
10064 packages to install.
10065 (filematches): New function. Tests if filename matches one of a list
10066 of packages to install.
10067 (recurse_dirs): Accept list of packages to install. Generalize tar.gz
10068 test to accomodate _tar.gz.
10069 (prompt): Ensure that stdout is flushed prior to asking for input.
10070 (findhref): Initialize variables to quiet a compiler warning.
10071 (processdirlisting): Accept list of packages to install. Special case
10072 cygwin tar file version number.
10073 (downloaddir): Accept list of packages to install.
10074 (downloadfrom): Ditto.
10075 (create_uninstall): Eliminate unneeded variables. Quote arguments to
10076 regtool.
10077 (do_start_menu): Don't create uninstall bat file if updating or user
10078 specified a list of packages.
10079 (mkmount): Eliminate unneeded variables.
10080 (get_pkg_stuff): New function. Checks for previous unversioned
10081 installation.
10082 (main): Accept -u and -f options and package names on the command line.
10083 Use get_pkg_stuff to initialize package information. Umount /etc.
10084 Call recurse_dirs and downloadfrom with list of package to install.
10085 Ensure that all /usr/local directories are created. Output
10086 installation time to setup.log.
10087 * setup.h: Add some prototypes.
10088 * xsystem.c (xcreate_process): Eliminate unneeded variable.
10089
4cf88dd9
CF
10090Sat Apr 29 12:43:08 2000 Christopher Faylor <cgf@cygnus.com>
10091
10092 * setup.c (optionprompt): Don't overlap display of already seen options
10093 on next page.
10094 (geturl): Print name of site which we're connecting to rather than "ftp
10095 site".
10096 (processdirlisting): Avoid URLs that contain a /. or ./ . Is this
10097 test too simplistic?
10098 (do_start_menu): Use pathcat to build path to <root>\bin to avoid
10099 problems when user chooses x:\ as their root.
10100 (main): For now, default to "non-update" mode. Allow -u option to
10101 signify an update.
10102
36591a07
CF
10103Sat Apr 29 00:26:06 2000 Christopher Faylor <cgf@cygnus.com>
10104
10105 * pkg.c: New file.
10106 * setup.c (tarx): Skip already installed or older packages. Report
10107 when a package has been updated.
10108 (processdirlisting): Skip already installed or older packages.
10109 (main): Detect -f option for forced installation. Initialize pkg stuff
10110 if appropriate.
10111 * setup.h: Add pkg definitions.
10112
c298ea4a
CF
10113Thu Apr 27 14:21:30 2000 Christopher Faylor <cgf@cygnus.com>
10114
10115 * setup.c (findhref): Return NULL on empty string. Eat any trailing
10116 ";something".
10117 (processdirlisting): Attempt to limit recursively processing the same
10118 directory.
10119
f4cafa7e
CF
10120Thu Apr 27 11:42:23 2000 Christopher Faylor <cgf@cygnus.com>
10121
10122 * setup.c (filedel): New function.
10123 (output_file): Keep track of files extracted from setup.exe for
10124 subsequent deletion.
10125 (tarx): Close process handle of child tar process or suffer handle
10126 leak.
10127 (getdownloadsource): Close mirror file so that it can be unlinked.
10128 (processdirlisting): Return total number of files extracted.
10129 (main): Initialize array of files to delete. Ensure that files are
10130 closed on exit. Make the directory that setup.exe is started from ==
10131 the directory where temporary files are placed. Issue an error if no
10132 files were found to download.
10133 * xsystem.c (xcreate_process): Close the thread handle. Close the
10134 process handle if we waited for it to exit.
10135
cd475210
CF
10136Thu Apr 27 09:54:19 2000 Christopher Faylor <cgf@cygnus.com>
10137
10138 * setup.c (main): Change version number output.
10139
7dff5e71
CF
10140Thu Apr 27 09:23:17 2000 Christopher Faylor <cgf@cygnus.com>
10141
10142 * setup.c (tarx): Use full path name to tar executable.
10143 (main): Build full pathname to tar executable. Create /usr/local/etc
10144 by default.
10145
99437fdb
CF
10146Wed Apr 26 22:16:57 2000 Christopher Faylor <cgf@cygnus.com>
10147
10148 * setup.c (findhref): Change method for scanning for href= to choose
10149 the last one on the line. This is still not foolproof and probably
10150 will need to be changed eventually. Don't abort if no "size" field is
10151 evident.
10152 (processdirlisting): Fix boolean algebra.
10153
0f562d55
CF
10154Wed Apr 26 01:10:39 2000 Christopher Faylor <cgf@cygnus.com>
10155
10156 * main.c (tarx): Add some code for future task of unmounting
10157 directories encountered in tar file.
10158
4356382d
CF
10159Sat Apr 22 16:37:03 2000 Christopher Faylor <cgf@cygnus.com>
10160
10161 * setup.c (findhref): Decode file size, when appropriate.
10162 (needfile): New function. Returns 1 when file should be
10163 downloaded.
10164 (processdirlisting): Always download if file size does not
10165 match. Prompt when download fails for some reason.
10166 (getdownloadsource): Accomodate findhref argument changes.
10167
6ab1ce6c
CF
10168Sat Apr 22 15:13:42 2000 Christopher Faylor <cgf@cygnus.com>
10169
10170 Throughout, use global session handle rather than reinitializing for
10171 each connect. Don't pass session as an argument to setup.c functions.
10172 * setup.c (geturl): Only issue "Connecting to.." message when using
10173 http or first time for ftp since subsequent connections will be fast.
10174 (processdirlisting): Allocate space for "N" when user has specified
10175 "N"ever option so that it can be subsequently freed.
10176 (main): Abort if we can't get the list of mirrors.
10177
37ee316b
CF
10178Thu Apr 20 16:41:42 2000 Christopher Faylor <cgf@cygnus.com>
10179
10180 * setup.c (main): Umount /bin and /lib.
10181
a59fb4fa
CF
10182Wed Apr 19 13:34:44 2000 Christopher Faylor <cgf@cygnus.com>
10183
10184 * setup.c (main): Create an empty /var/run/utmp.
10185
75f4b861
CF
10186Tue Apr 18 19:16:56 2000 Christopher Faylor <cgf@cygnus.com>
10187
10188 * Makefile.in: Add umount to list of files to include in setup.exe.
10189 * setup.c (xumount): New function for unmounting directories.
10190 (main): Unmount /usr.
10191 (mkmount): Unmount "unix directory" before trying to figure out where
10192 to create the directory.
10193
d4a66789
CF
10194Tue Apr 18 17:28:55 2000 Christopher Faylor <cgf@cygnus.com>
10195
10196 * setup.c (mkmount): Use xcreate_process to start mount process,
10197 avoiding the shell.
10198 (main): Don't do buffering on stdout or prompts won't be displayed
10199 correctly if running in a cygwin shell with CYGWIN=tty.
10200
a6c3982d
CF
10201Tue Apr 18 15:35:19 2000 Christopher Faylor <cgf@cygnus.com>
10202
10203 * setup.c (main): Remove the CYGWIN environment variable before
10204 starting any cygwin programs.
10205
0ffd5e3b
CF
10206Mon Apr 17 19:20:52 2000 Vadim Egorov <egorovv@mailandnews.com>
10207
10208 * setup.c (geturl): Use alternative method for finding filename part of
10209 a URL.
10210 (processdirlisting): Accomodate strange output from non-MS ftp proxy.
10211 (downloaddir): Unlink file containing dir listing.
10212 (downloadfrom): Ditto.
10213
3e54bcf9
CF
10214Mon Apr 17 00:00:49 2000 Christopher Faylor <cgf@cygnus.com>
10215
10216 * setup.c (main): Disallow running setup.exe from the "root".
10217
005b73c4
CF
10218Sun Apr 16 18:50:58 2000 Christopher Faylor <cgf@cygnus.com>
10219
2cf65e6e 10220 Use "warning" function, where appropriate, to output warnings.
005b73c4
CF
10221 * setup.c (warning): New function -- outputs warning to console and log
10222 file.
10223 (tarx): Fix index used to reset file protection.
10224 (main): Open the log file earlier so that more stuff can be sent to it.
10225
36dc5fc8
CF
10226Sat Apr 15 20:05:33 2000 Christopher Faylor <cgf@cygnus.com>
10227
10228 * setup.c (processdirlisting): Make "N" option a little less aggressive.
10229
c73320de
CF
10230Fri Apr 14 11:11:29 2000 Christopher Faylor <cgf@cygnus.com>
10231
10232 * setup.c (tarx): Wait to after tar has completed to reset protections
10233 or suffer races with tar process.
10234
68cdfc92
CF
10235Thu Apr 13 12:51:19 2000 Christopher Faylor <cgf@cygnus.com>
10236
10237 * Makefile.in: Eliminate duplicate -nostdinc from CFLAGS.
10238 * setup.c (create_uninstall): Create the uninstall .bat file in the
10239 "root" so that we can remove the /bin directory. Add bin\cygwin.bat to
10240 list of files to be deleted. Fix directory detection for determining
10241 when to use 'rmdir'.
10242 (do_start_menu): Add /usr/local/bin to the path.
10243 (main): Add slop to files.array allocation so that we don't have to
10244 worry about reallocating the array when it grows too large when doing
10245 some trivial "pushes". Add /tmp and /usr/local/{bin,lib} to list of
10246 files.
10247
35d18861
CF
10248Thu Apr 13 01:59:44 2000 Christopher Faylor <cgf@cygnus.com>
10249
10250 * setup.c (processdirlisting): Fix handling of "A" for "A"lways
10251 download.
10252
20904de1
CF
10253Thu Apr 13 01:11:45 2000 Christopher Faylor <cgf@cygnus.com>
10254
10255 * path.c (kill_cygpath): New cleanup function.
10256 (exit_cygpath): New cleanup function.
10257 (cygpath_pipe): New function. Sets up cygpath in the background for
10258 translating filenames.
10259 (pathcvt): Use background cygpath for file translation.
10260 * setup.c (tarx): New function. Called to extract tar files, capture
10261 logging output, and translate it to Windows format.
10262 (recurse_dirs): Use 'tarx' function to extract files.
10263 (create_uninstall): Use file list built up by tarx rather than reading
10264 the log file.
10265 (mkmount): Add ability to mount root.
10266 (main): Track elapsed install time. Mount root.
10267 * starry.h: Add index field to strarry for tracking of tarx's usage of
10268 this structure.
10269 * xsystem.c (xcreate_process): Return proces handle when not waiting.
10270
c1246750
CF
10271Mon Apr 10 22:44:56 2000 Christopher Faylor <cgf@cygnus.com>
10272
10273 * path.c: New file.
10274 (pathfp): New function. Preliminary work for new -f cygpath
10275 functionality.
10276 * Makefile.in: Add new file.
10277 (pathcvt): Move to new file.
10278 (dtoupath): Ditto.
10279 (utodpath): Ditto.
10280 (pathcat): Ditto.
10281 * setup.c (processdirlisting): Always open file in text mode.
10282 (create_uninstall): Ditto.
10283 (getdownloadsource): Ditto.
10284 (main): Ditto.
10285
4b40edd0
CF
10286Mon Apr 10 20:33:40 2000 Christopher Faylor <cgf@cygnus.com>
10287
10288 * xsystem.c: New file.
10289 * Makefile.in: Accomodate new file.
10290 * setup.c (xsystem): Move to new file.
10291 (recurse_dirs): Accept handle to output log file. Don't use ">"
10292 redirection to trap tar output. Use supplied handle instead.
10293 (create_uninstall): Accept FILE pointer to opened log file. Don't
10294 unlink log file here.
10295 (do_start_menu): Accept FILE pointer to pass to create_uninstall.
10296 (main): Open log file here and pass it to various functions. Unlink
10297 when done.
10298
6f8e3b45
CF
10299Mon Apr 10 17:15:52 2000 Christopher Faylor <cgf@cygnus.com>
10300
10301 Change occurrences of .usr.bin to .bin throughout.
10302 * setup.c (geturl): Increase number of retries to 20. Let user know
10303 what's going on during long connects.
10304 (processdirlisting): Accept "A"lways and "N"ever as update options.
10305 (create_uninstall): Load cygwin1.dll from the current directory rather
10306 than \bin.
10307 (main): Add some expository text.
10308
2a907b70
CF
10309Sun Apr 9 20:59:15 2000 Christopher Faylor <cgf@cygnus.com>
10310
10311 * Makefile.in: Change method for compressing cygwin1.dll to avoid
10312 creating a cygwin1.dll in the current directory. Ensure the addition
10313 of -nostdinc to MINGW_CFLAGS.
10314
c4285a3c
CF
10315Sun Apr 9 02:15:47 2000 Christopher Faylor <cgf@cygnus.com>
10316
10317 * Makefile.in: Augment clean target.
10318
ea615d51
RP
10319Fri Apr 7 17:04:02 Ron Parker <rdparker@sourceware.cygnus.com>
10320
10321 * README: Added info about non-working mingw implementation
c1246750 10322 * gzip.exe.gz: Replace with a version from the same build as the other
ea615d51 10323 tools.
c1246750 10324 * tar.exe.gz: Replace with a version from the same build as the other
ea615d51 10325 tools.
c1246750 10326 * mount.exe.gz: Add to repository until, mingw can build setup.
ea615d51
RP
10327 * cygpath.exe.gz: ditto
10328 * cygwin1.dll.gz: ditto
c1246750
CF
10329 * setup.c: Overwrite /bin and /lib mounts. Generate working shortcut
10330 for Win9x. Display only a screenfull of options at a time. Call all
10331 tools with an absolute path.
10332 * setup.dsp: Restore the carriage returns, MS Developer Studio needs
10333 them.
ea615d51
RP
10334 * setup.dsw: ditto
10335 * zlib.dsw: ditto
10336
51954e74
CF
10337Thu Apr 6 19:15:27 2000 Christopher Faylor <cgf@cygnus.com>
10338
c1246750
CF
10339 * Makefile.in: Add "-nostdinc" to regular CFLAGS. Add target to grab
10340 cygwin1.dll from ../cygwin subdirectory.
51954e74
CF
10341 * gzip.exe.gz: Update.
10342 * tar.exe.gz: Update.
10343
7b777418
CF
10344Wed Apr 5 10:52:08 2000 Christopher Faylor <cgf@cygnus.com>
10345
10346 * Makefile.in: Use ZLIB variable as a target.
10347
4306b490
CF
10348Sat Apr 1 22:49:09 2000 Christopher Faylor <cgf@cygnus.com>
10349
5e7eb909
CF
10350 * Makefile.in: Eliminate traces of cygwinisms. Don't link with
10351 libmsvcrt.a. It's unneeded. Build .rc file on the fly from various
10352 sources.
4306b490
CF
10353 * configure.in: Locate correct objcopy.
10354 * configure: Regenerate.
10355
739457f4
CF
10356Sat Apr 1 20:48:09 2000 Christopher Faylor <cgf@cygnus.com>
10357
10358 * Makefile.in: New file.
10359 * configure.in: New file.
10360 * configure: New file.
10361 * zlib/Makefile.am: New file.
10362 * zlib/configure.in: New file.
10363 * zlib/aclocal.m4: New file.
10364 * zlib/acinclude.m4: New file.
10365 * zlib/configure: Regenerate from configure.in.
10366 * zlib/Makefile.in: Regenerate from Makefile.am
8507f105
DD
10367
10368%%% $Id$
10369$Revision$
This page took 1.335342 seconds and 5 git commands to generate.