As a security precaution, we have turned on the setting "Require API key authentication for API requests" for everyone. If this has broken something, please contact bugzilla-admin@mozilla.org
Last Comment Bug 67027 - Having int chars in install folder name doesn't uninstall anything
: Having int chars in install folder name doesn't uninstall anything
Status: VERIFIED FIXED
: intl
Product: Core
Classification: Components
Component: Internationalization (show other bugs)
: Trunk
: x86 Windows 2000
: -- major (vote)
: Future
Assigned To: Sean Su
: Yuying Long
: Makoto Kato [:m_kato]
Mentors:
Depends on:
Blocks: 101606 123821
  Show dependency treegraph
 
Reported: 2001-01-30 04:17 PST by Henrik Gemal
Modified: 2003-05-06 13:33 PDT (History)
11 users (show)
See Also:
Crash Signature:
(edit)
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---


Attachments
patch #1 (2.06 KB, patch)
2001-07-10 16:48 PDT, Sean Su
no flags Details | Diff | Splinter Review
patch v2.0 (2.25 KB, patch)
2003-04-30 00:49 PDT, Sean Su
dveditz: review+
Details | Diff | Splinter Review
patch v2.1 (3.60 KB, patch)
2003-05-03 22:39 PDT, Sean Su
no flags Details | Diff | Splinter Review
patch v2.2 (4.39 KB, patch)
2003-05-04 23:37 PDT, Sean Su
dveditz: review+
jag-mozilla: superreview+
sspitzer: approval1.4b+
Details | Diff | Splinter Review
patchv 2.3 (4.28 KB, patch)
2003-05-05 17:34 PDT, Sean Su
dveditz: review+
dmose: superreview+
sspitzer: approval1.4b+
Details | Diff | Splinter Review

Description User image Henrik Gemal 2001-01-30 04:17:07 PST
If I choose to install mozilla into:
c:\program files\mozillaæ.org
and choose "Mozillaæ" as folder in Program Folder

and then after choose to uninstall Mozilla via control panel, then nothing is 
uninstalled.

The folder:
"c:\program files\mozillaæ.org"
and the Program folder "Mozillaæ" are not deleted!

installer build 20010129
Comment 1 User image Jon Rubin 2001-05-07 17:01:29 PDT
Changing component to Internationalization.  Checked this against build 05-04-06 
trunk on WinME-Ja. This build had been installed in a folder that was named 
using Japanese characters; choosing to uninstall via the Control Panel results 
in Netscape 6(6.5) being removed from the list of programs in the Add/Remove 
list, but nothing is actually uninstalled.
Comment 2 User image Andreas Becker 2001-05-07 17:09:47 PDT
Adding keyword intl.
Comment 3 User image Jon Rubin 2001-05-07 17:44:32 PDT
Nominating for nsbeta1
Comment 4 User image Jaime Rodriguez, Jr. 2001-05-16 15:47:30 PDT
SSU - All users should be able to uninstall the product, especially beta 
software. Pls accept for nsbeta.
Comment 5 User image Daniel Veditz [:dveditz] 2001-05-16 16:23:10 PDT
I can't see this is a beta stopper--especially not such an old bug that wasn't 
even nominated until after the ramp-down has started--given the other stuff 
that's been thrown overboard. Mac and Linux users don't even get an uninstall.
Comment 6 User image Jon Rubin 2001-05-16 16:49:35 PDT
Mac and Linux users don't need an uninstall.  A lot of Windows users will not 
know what to do without an automatic uninstall, because of registry and dll 
worries.  If this bug isn't fixed, we should at least include notes for 
uninstalling manually.
Comment 7 User image Jaime Rodriguez, Jr. 2001-05-16 17:48:32 PDT
Keeoing this one on my list for those Win32 users. I will review with the PDT 
tomorrow or Friday.
Comment 8 User image Jaime Rodriguez, Jr. 2001-05-18 14:09:12 PDT
As good citizens, we need to do a good job of cleanup, especially for a beta.
Comment 9 User image Jaime Rodriguez, Jr. 2001-05-21 17:26:45 PDT
Per i18n meeting with PDT this afternoon, this is a RTM stopper, but not a beta 
stopper.

SSU - Pls assign the milestone M0.9.2 for this one.
Comment 10 User image Sean Su 2001-06-25 18:02:09 PDT
moving this over to 0.9.3
Comment 11 User image Jaime Rodriguez, Jr. 2001-06-27 11:40:41 PDT
SSU - Can we get a nsBranch on this one?
Comment 12 User image Sean Su 2001-06-27 14:18:02 PDT
I just took a quick look at where the problem might be coming from.  The 
solution does not look trivial.  Still looking though...
Comment 13 User image Jaime Rodriguez, Jr. 2001-07-10 14:43:58 PDT
AndreasB/Msanz - What's your take on this one? I think some international users
might users extended or double-byte characters for their install folder.

SSU - Any idea on how long this will take to fix, yet?
Comment 14 User image msanz 2001-07-10 15:55:41 PDT
We need input from Sean as to how difficult it is to fix it. I agree it's very
ugly and undesirable, but at this late in the game we may have to defer it. In
any case, Sean, please advise.
Comment 15 User image Sean Su 2001-07-10 16:48:03 PDT
Created attachment 41874 [details] [diff] [review]
patch #1
Comment 16 User image Sean Su 2001-07-10 16:49:49 PDT
the attached patch does fix this particular bug, but might create other problems 
for other character sets.

I'll let Dan explain the consequences since he understands this much better than 
I do.
Comment 17 User image Daniel Veditz [:dveditz] 2001-07-12 01:38:31 PDT
The toString() on install queue objects returns char*, which gets blindly 
expanded to double-bytes and passed around as pseudo-Unicode. The intent was to 
do an honest conversion to Unicode and then store the data in lossless UTF8. 
But since that's not happening any time soon (it's a big change) Sean's patch 
to do lame Unicode->ASCII by byte stripping turns out to successfully 
reconstruct the correct file name.

Two wrongs *do* make a right, apparently
Comment 18 User image Daniel Veditz [:dveditz] 2001-07-12 01:47:10 PDT
r=dveditz
Comment 19 User image Jaime Rodriguez, Jr. 2001-07-12 08:17:12 PDT
Looks like we have a patch, and R? Thanks Dan and Sean. Can we get a SR?
Comment 20 User image Scott MacGregor 2001-07-12 11:42:42 PDT
rs=mscott
Comment 21 User image Sean Su 2001-07-12 12:04:47 PDT
Jaime, you need to lobby for PDT+ for this bug to be checked into the branch. I 
can't check in to the branch without it.
Comment 22 User image Jaime Rodriguez, Jr. 2001-07-13 08:02:18 PDT
Trying, but the CLayton is concerned about this comment by you, "but might
create other problems for other character sets."

Should we see how it does on the trunk, so we can assess the risk? What's your
feeling on this one? How risky is it?
Comment 23 User image Sean Su 2001-07-13 11:34:53 PDT
adding dveditz.  I'll let him try to explain your concern.
Comment 24 User image Daniel Veditz [:dveditz] 2001-07-13 12:03:48 PDT
This patch won't cause any additional problems. It also doesn't fix the 
fundamental brokenness in the nsInstallObject API. It does band-aid the 
situation in this particular case.
Comment 25 User image msanz 2001-07-13 13:51:01 PDT
so, we can summarize saying that this is a safe fix? If so, I will send the mail
to PDT. Let me know.
Comment 26 User image Jaime Rodriguez, Jr. 2001-07-13 16:45:21 PDT
soudns like that is what dan is saying to me. maybe, we sound let it hang out on
the trunk for a while, before we have it checked into the branch . . . just a
suggestion.
Comment 27 User image Sean Su 2001-07-13 16:56:18 PDT
patch checked in on the trunk only.
Comment 28 User image Jon Rubin 2001-07-17 21:16:53 PDT
Tested this using 07-17-07-trunk build on WinMe-Ja.  Uninstall sometimes still
does not work, depending on the chars. used in the folder name.  In all cases,
uninstall removes "Netscape 6 (6.1b1)" from the Add/Remove Programs list.  Also,
the program icons always successfully get removed from the Start menu.  But
depending on the chars used, the program files sometimes still remain in the
install folder.  I originally tested this using ????????????? for
the folder name; files remained in the install folder after uninstall, so I then
tested using variations of this name and single-byte numbers.  I narrowed down
the problem chars to the following:

Program files remain when install folder contains these chars:

? (double-byte 7) 
? (double-byte 1)
? (katakana "ku")

All program files were successfully removed when the install folder contained
only these chars (singly or combined):

? (kanji "gatsu")
? (kanji "nichi")
? (hiragana "no")
? (katakana "to")
? (katakana "ra")
? (katakana "n")
? (katakana "bi")
? (katakana "ru")
? (katakana "do")
? (kanji 7 "shichi")
1 (single-byte 1)
7 (single-byte 7)
Comment 29 User image Jon Rubin 2001-07-17 21:30:54 PDT
Sorry, that looks like my chars didn't get encoded properly.  Let's try that 
again:

The original folder: $B#77n#1#7F|$N%H%i%s%/%S%k%I(B

Program files remain when install folder contains these chars:

$B#7(B (double-byte 7) 
$B#1(B (double-byte 1)
$B%/(B (katakana "ku")

All program files were successfully removed when the install folder contained
only these chars (singly or combined):

$B7n(B (kanji "gatsu")
$BF|(B (kanji "nichi")
$B$N(B (hiragana "no")
$B%H(B (katakana "to")
$B%i(B (katakana "ra")
$B%s(B (katakana "n")
$B%S(B (katakana "bi")
$B%k(B (katakana "ru")
$B%I(B (katakana "do")
$B<7(B (kanji 7 "shichi")
1 (single-byte 1)
7 (single-byte 7)
Comment 30 User image Jaime Rodriguez, Jr. 2001-07-18 09:42:20 PDT
SSU/Ftang - I liked to TM this one for 0.9.4, if possible (i.e. eMojo release).
Comment 31 User image Jaime Rodriguez, Jr. 2001-07-18 09:43:21 PDT
Request P2 priority.
Comment 32 User image Daniel Veditz [:dveditz] 2001-07-18 10:21:59 PDT
Fixing the underlying problem (and some other installer i18n problems) as 
opposed to the band-aid "two wrongs make a right" hack we stuck in here will 
take some significant work, from an install staff of one. Unlikely to be 
improved for 0.9.4 given other more pressing problems.
Comment 33 User image Jaime Rodriguez, Jr. 2001-07-18 16:56:26 PDT
Dan - I understand, band-aid "two wrongs make a right"
, but its the only thing we have in the short term. Shouldn't we fix the problem
for the user ASAP, and then fix it, the better way later? I'd hate to see tthe
work already done slip to the side, and this issue not addressed for an
indefinite amount of time (i.e. The right fix, might not make your planned list
of work for the next couple of releases).
Comment 34 User image Daniel Veditz [:dveditz] 2001-07-18 17:17:02 PDT
The band-aid proposed here has been checked into the tree (trunk and branch), 
and it goes a long way toward solving the problem. I can't think of an 
additional band-aid to fix the remaining problems described, we'll have to go 
for the complete restructuring to do that.
Comment 35 User image Jaime Rodriguez, Jr. 2001-07-18 17:28:16 PDT
Ah! Should we close this one based on its summary, and open other bugs for the
other related issues?
Comment 36 User image Jon Rubin 2001-07-18 17:44:16 PDT
"Doesn't uninstall anything" doesn't seem to apply anymore.  Even when
problematic chars are used in the folder name, it looks like everything but the
program files are getting removed (registry entries get removed also).  I'll
write a new bug if everyone agrees that's the way to go.
Comment 37 User image Jon Rubin 2001-07-25 12:53:43 PDT
Added this to the RTM Branch Release Notes Tracking bug (bug 90577).
Comment 38 User image Blake Ross 2001-07-31 09:44:14 PDT
Missed 0.9.3.
Comment 39 User image Jon Rubin 2001-08-01 14:09:28 PDT
The original problem seems to have returned.  In 07-27-branch US (on WinMe-Ja), 
I cannot uninstall anything if the install folder contains Japanese chars.  In 
my comments on 7-17, I said that certain chars do not cause a problem; this no 
longer is the case.  The only thing that gets removed is the entry in 
"Add/Remove Programs"; everything else remains, including the Start Menu icons.
Comment 40 User image Andreas Becker 2001-08-28 19:06:23 PDT
mass change, switching qa contact from jonrubin to ruixu.
Comment 41 User image Syd Logan 2001-09-01 18:30:19 PDT
Moving to 0.9.5, getting rid of keyword soup
Comment 42 User image Cindy Roberts 2001-09-11 13:34:05 PDT
Marking nsbranch- as it was decided in the August bug triage that we wouldn't
have enough time in eMojo to fix this.  Let's revisit for MachV.
Comment 43 User image elaineking 2001-09-14 13:25:35 PDT
removed keyword nsbranch since it now has nsbranch-, per pdt mtg.
Comment 44 User image Jaime Rodriguez, Jr. 2001-09-23 12:45:45 PDT
--> I forget who is doing install on Sol's team.
Comment 45 User image sol 2001-09-24 09:59:17 PDT
GreggL is PM for installer.

Question - must the user change the default installation location in order to
see the effects of this bug?
Comment 46 User image Asa Dotzler [:asa] 2001-10-12 17:28:02 PDT
0.9.5 is out the door. bumping TM up by one.
Comment 47 User image Syd Logan 2001-11-21 16:51:20 PST
Can someone hint to as what the rewrite to better support i18n would entail?
Comment 48 User image Syd Logan 2001-11-29 22:02:14 PST
over to curt
Comment 49 User image Jaime Rodriguez, Jr. 2002-03-18 17:33:56 PST
nsbeta1- ADT/XPInstall triage.
Comment 50 User image selmer (gone) 2002-04-03 13:59:29 PST
Please update this bug with an [adt1] - [adt3] impact rating (or take it off the
list if it doesn't even rate adt3.)  Thanks!
Comment 51 User image Andrew Hagen 2002-06-05 15:41:51 PDT
See also bug 137656.
Comment 52 User image Sean Su 2003-04-30 00:49:23 PDT
Created attachment 122083 [details] [diff] [review]
patch v2.0
Comment 53 User image Daniel Veditz [:dveditz] 2003-05-01 15:55:31 PDT
Comment on attachment 122083 [details] [diff] [review]
patch v2.0

r=dveditz
Comment 54 User image Daniel Veditz [:dveditz] 2003-05-01 15:57:29 PDT
Sean is writing patches for this, over to him
Comment 55 User image Sean Su 2003-05-03 22:39:29 PDT
Created attachment 122419 [details] [diff] [review]
patch v2.1

In addition to fixing this bug, this patch might also fix bug 137656.
Comment 56 User image Sean Su 2003-05-04 23:37:36 PDT
Created attachment 122469 [details] [diff] [review]
patch v2.2
Comment 57 User image Daniel Veditz [:dveditz] 2003-05-04 23:46:42 PDT
Comment on attachment 122469 [details] [diff] [review]
patch v2.2

r=dveditz
Comment 58 User image jag (Peter Annema) 2003-05-05 09:19:46 PDT
Comment on attachment 122469 [details] [diff] [review]
patch v2.2

sr=jag
Comment 59 User image Sean Su 2003-05-05 10:33:32 PDT
Comment on attachment 122469 [details] [diff] [review]
patch v2.2

more string cleanup stuff.  not regression.

Tested on a JA XP machine to make sure it worked.
Comment 60 User image (not reading, please use seth@sspitzer.org instead) 2003-05-05 13:25:02 PDT
Comment on attachment 122469 [details] [diff] [review]
patch v2.2

a=sspitzer
Comment 61 User image Sean Su 2003-05-05 17:34:12 PDT
Created attachment 122528 [details] [diff] [review]
patchv 2.3

previous patch causes crash under a true JA system.  this one does not, and
also fixes the uninstaller problem.
Comment 62 User image Daniel Veditz [:dveditz] 2003-05-05 19:59:30 PDT
Comment on attachment 122528 [details] [diff] [review]
patchv 2.3

r=dveditz

Please comment the AssignWithConversion() in ::OnFinalizeProgress that the
apparently Lossy conversion is safe because the input source came from a
similar fake-ascii-to-not-really-unicode conversion.
Comment 63 User image Dan Mosedale (:dmose) 2003-05-05 22:28:29 PDT
Comment on attachment 122528 [details] [diff] [review]
patchv 2.3

sr=dmose@mozilla.org
Comment 64 User image Sean Su 2003-05-05 22:32:09 PDT
Comment on attachment 122528 [details] [diff] [review]
patchv 2.3

trivial fix.  already tested in a JA winXP system.
Comment 65 User image (not reading, please use seth@sspitzer.org instead) 2003-05-05 22:38:19 PDT
Comment on attachment 122528 [details] [diff] [review]
patchv 2.3

a=sspitzer
Comment 66 User image Sean Su 2003-05-05 23:17:41 PDT
patch checked in.
Comment 67 User image Yuying Long 2003-05-06 13:33:46 PDT
Verified fixed on 05-06 trunk build on WinXP-JA, Win98-JA with Japanese
characters and Win2000-EN , Win98-German with Latin 1 accent characters.

Note You need to log in before you can comment on or make changes to this bug.