Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Message-ID: <002101c1c2dd$36f06650$dda8883e@wdg.uk.ibm.com> From: "Max Bowsher" To: Subject: setup.exe (cinstall) bugfixes + minor new feature Date: Sun, 3 Mar 2002 17:53:59 -0000 MIME-Version: 1.0 Content-Type: multipart/signed; protocol="application/x-pkcs7-signature"; micalg=SHA1; boundary="----=_NextPart_000_001A_01C1C2DC.65A72110" X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 ------=_NextPart_000_001A_01C1C2DC.65A72110 Content-Type: multipart/mixed; boundary="----=_NextPart_001_001B_01C1C2DC.65A72110" ------=_NextPart_001_001B_01C1C2DC.65A72110 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit I've been working with the setup code, and have discovered some bugs in the current (just updated) CVS version. I'm posting a patch here for comments, whilst I join cygwin-patches, and study the Contributing instructions. The patch does the following: BugFix: io_stream::mkpath_p(isadir, path) misuse mkpath_p is supposed to take a path with either a file:// or a cygfile:// prefix, but it is fed a path with no prefix in some places. The patch adds a file:// prefix where needed. This was causing some directories not to be created, including the Cygwin directory in the start menu. BugFix: add backslash call to make_link, in desktop.cc This was causing the start menu shortcut to be called 'Programs/Cygwin/Cygwin Bash Shell' instead of being in the correct directory structure Feature Addition: Use files /etc/setup/inhibit-{startmenu,desktop}-icon to remeber user de-selection of the create icon checkboxes on the last page of setup. Max. ------=_NextPart_001_001B_01C1C2DC.65A72110 Content-Type: application/octet-stream; name="currwork.patch" Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename="currwork.patch" diff -mru -X patch-excludes src/winsup/cinstall/desktop.cc = src-work/winsup/cinstall/desktop.cc=0A= --- src/winsup/cinstall/desktop.cc Sun Mar 3 17:29:24 2002=0A= +++ src-work/winsup/cinstall/desktop.cc Sun Mar 3 17:23:41 2002=0A= @@ -103,7 +103,7 @@=0A= static void=0A= make_link (String const &linkpath, String const &title, String const = &target)=0A= {=0A= - String fname =3D linkpath + "/" + title + ".lnk";=0A= + String fname =3D backslash(linkpath + "/" + title + ".lnk");=0A= =0A= if (_access (fname.cstr_oneuse(), 0) =3D=3D 0)=0A= return; /* already exists */=0A= @@ -111,7 +111,7 @@=0A= msg ("make_link %s, %s, %s\n",=0A= fname.cstr_oneuse(), title.cstr_oneuse(), target.cstr_oneuse());=0A= =0A= - io_stream::mkpath_p (PATH_TO_FILE, fname);=0A= + io_stream::mkpath_p (PATH_TO_FILE, String("file://") + fname);=0A= =0A= String exepath;=0A= =0A= @@ -278,7 +278,7 @@=0A= make_passwd_group ()=0A= {=0A= String fname =3D cygpath ("/etc/postinstall/passwd-grp.bat");=0A= - io_stream::mkpath_p (PATH_TO_FILE, fname);=0A= + io_stream::mkpath_p (PATH_TO_FILE, String("file://") + fname);=0A= =0A= if (uexists ("/etc/passwd") && uexists ("/etc/group"))=0A= return;=0A= @@ -339,14 +339,27 @@=0A= make_etc_profile ();=0A= make_passwd_group ();=0A= =0A= + String inhibit_menu_file =3D = backslash(cygpath("/etc/setup/inhibit-startmenu-icon"));=0A= + String inhibit_desktop_file =3D = backslash(cygpath("/etc/setup/inhibit-desktop-icon"));=0A= +=0A= if (root_menu)=0A= {=0A= start_menu ("Cygwin Bash Shell", batname);=0A= + _unlink(inhibit_menu_file.cstr_oneuse());=0A= + }=0A= + else=0A= + {=0A= + fclose(fopen(inhibit_menu_file.cstr_oneuse(),"wb"));=0A= }=0A= =0A= if (root_desktop)=0A= {=0A= desktop_icon ("Cygwin", batname);=0A= + _unlink(inhibit_desktop_file.cstr_oneuse());=0A= + }=0A= + else=0A= + {=0A= + fclose(fopen(inhibit_desktop_file.cstr_oneuse(),"wb"));=0A= }=0A= }=0A= =0A= @@ -397,6 +410,9 @@=0A= if (_access (fname.cstr_oneuse(), 0) =3D=3D 0)=0A= return 0; /* already exists */=0A= =0A= + if (uexists("/etc/setup/inhibit-desktop-icon"))=0A= + return 0; /* inhibited by previous user choice */=0A= +=0A= return IDC_ROOT_DESKTOP;=0A= }=0A= =0A= @@ -430,6 +446,9 @@=0A= =0A= if (_access (fname.cstr_oneuse(), 0) =3D=3D 0)=0A= return 0; /* already exists */=0A= +=0A= + if (uexists("/etc/setup/inhibit-startmenu-icon"))=0A= + return 0; /* inhibited by previous user choice */=0A= =0A= return IDC_ROOT_MENU;=0A= }=0A= diff -mru -X patch-excludes src/winsup/cinstall/localdir.cc = src-work/winsup/cinstall/localdir.cc=0A= --- src/winsup/cinstall/localdir.cc Mon Feb 18 13:53:06 2002=0A= +++ src-work/winsup/cinstall/localdir.cc Sun Mar 3 17:20:34 2002=0A= @@ -45,7 +45,7 @@=0A= void=0A= save_local_dir ()=0A= {=0A= - io_stream::mkpath_p (PATH_TO_DIR, local_dir);=0A= + io_stream::mkpath_p (PATH_TO_DIR, String("file://") + local_dir);=0A= =0A= io_stream *f;=0A= if (get_root_dir ().size())=0A= ------=_NextPart_001_001B_01C1C2DC.65A72110-- ------=_NextPart_000_001A_01C1C2DC.65A72110 Content-Type: application/x-pkcs7-signature; name="smime.p7s" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="smime.p7s" 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 CnCbAAAAAAAA ------=_NextPart_000_001A_01C1C2DC.65A72110--