Closed
Bug 99526
Opened 24 years ago
Closed 24 years ago
Installer for simple MAPI
Categories
(MailNews Core :: Simple MAPI, defect, P1)
Tracking
(Not tracked)
VERIFIED
FIXED
People
(Reporter: tiantian, Assigned: ssu0262)
References
Details
(Whiteboard: PDT+)
Attachments
(4 files, 5 obsolete files)
1.41 KB,
patch
|
dveditz
:
review+
mscott
:
superreview+
|
Details | Diff | Splinter Review |
9.93 KB,
patch
|
dveditz
:
review+
|
Details | Diff | Splinter Review |
6.26 KB,
text/plain
|
Details | |
4.80 KB,
patch
|
Details | Diff | Splinter Review |
This is to track the development for the installer for simple MAPI.
Reporter | ||
Updated•24 years ago
|
Comment 2•24 years ago
|
||
changing qa contact as per bug 95122 since this a related bug.
QA Contact: sheelar → trix
Comment 3•24 years ago
|
||
We will be able to do the MS COM registration part from preferences when the
user checks/uncheck the checkbox for making mozilla as the default mail client.
Comment 4•24 years ago
|
||
Rajiv, could you put more description in the bug. We talked about several
issues at the meeting.
Adding dveditz to the cc.
Comment 5•24 years ago
|
||
The installer needs to install/un-install MAPI support dlls and register /
un-register the MAPI support MS COM components and Mozilla executable as an MS
COM component into the Windows registry.
However the registration of MS COM components can be registered / un-registered
when the user selects / un-select mozilla as default mail client. This will be
done at two places .. when the user does this from the prefs dialog and when the
user does so from the mail integration dialog.
Thus Install will just copy the mozilla support dlls which will be part of the
other Mozilla/mailnews module.
During registration the preferences code will call the
DllRegisterServer/DllUnregister function exposed by the mapiProxy Dll to
register the MAPI support MS COM components as well as the
RegisterServer/UnregisterServer function (needs to be exposed) of the
msgMapi.dll to register Mozilla as MS COM component.
Besides this the prefs will modify the MAPI registry key in Windows registry to
update it with Mozilla's mapi32.dll. It will also back up the already defined
key value (which would be pointing to the mapi32.dll of any other messaging
application) into HKLM/Software/Mozilla/Desktop registry key, similiar to what
is done during the the HTTP preference setting as mention by Sean Su in the
meeting.
This will be used by Un-Install to set the key back to the backed up value (the
value before mozilla was selected as default mail client).
Ideally Uninstall should also un-register the MAPI support MS COM component and
Mozilla executable as an MS COM component (or call the Prefs code to do so)
besides removing the Mapi support Dlls.
Please also add/create any appropriate windows registry keys that provide
information on whether the mapi32.dll was replaced or the new method of
referencing the correct mapi32.dlll using windows registry keys has been used.
Even if we only end up supporting the new method, it would still be a good idea
to set some type of flag in case we decide to support the older method that
requires the replacement of the system mapi32.dll.
As for unregistering the MS COM components, the installer just need to know what
the names of these files are. The uninstaller already has the capability to
handle this situation.
Reporter | ||
Comment 7•24 years ago
|
||
nsbranch+
I've been in the loop of this bug. There's really nothing to do until we hear
from Srilatha on what the registry keys are for the uninstaller to use in order
to restore the previous default mail handler.
Comment 10•24 years ago
|
||
I'll take this. I'll check with Sean and Srilatha to see what can be done to
get this in for emojo.
Assignee: syd → curt
Comment 11•24 years ago
|
||
The following two strings will be saved in the registry
HKEY_LOCAL_MACHINE\\Software\\Clients\\Mail
HKEY_LOCAL_MACHINE\\Software\\Clients\\Mail\\"DefaultMailClient"\\protocols\\mai
lto\\shell\\open\\command
In the above string "DefaultMailClient" is the value of the first string.
and they are stored in the key
HKEY_LOCAL_MACHINE\\Software\\Mozilla\\Desktop
Reporter | ||
Comment 12•24 years ago
|
||
HI, Curt: Please could you let me know about the status of this bug before 10am
on 9/18. I need the status for PDT meeting at 12 noon. Many thanks.
Whiteboard: PDT
Assignee | ||
Comment 13•24 years ago
|
||
Actually, I'll be working on this. It most likely will not be in tomorrow's
build because I just got all the necessary info today. This fix/feature does
not impact UI code. Is it really urgent to have this in by tonight? Please let
me know.
Assignee: curt → ssu
Reporter | ||
Comment 14•24 years ago
|
||
Added PDT status, per PDT meeting today. Once we got all r and sr, will change
it into PDT+.
All r ans sr, please try your best to give comments within 24 hours. If no
reply, then our assumption will be within 24 hours. If you cannot do it within
24 hours, please attend the PDT meeting at 12 noon on 9/18 at the pit of bldg 21
to explain why. Many thanks.
=======================
Subject: Urgent: your review and super review comments.
Date: Mon, 17 Sep 2001 13:18:36 -0700
From: Tiantian Kong <tiantiankong8@netscape.com>
Reply-To: tiantiankong8@netscape.com
To: sspitzer@netscape.com, dveditz@netscape.com, Doug Turner <dougt@netscape.com>, law@netscape.com, alecf@netscape.com,
Rajiv Dayal <rdayal@netscape.com>
CC: Elaine King <elaineking@netscape.com>
Hi:
You got this mail because you are the r or sr of features in simple MAPI.
Pathes for these has been up on the bug.
On behalf on PDT, I'm requesting that you provide immediate feeback. If you
cannot be back to us today, please reply by
email, and cc Elaine King, as to when you'll be able to get back to us.
This is an urgent request, please drop everything else that you are doing.
Thx. Elaine will be calling each of you as well.
Rajiv, r, Pref, 95122
Seth, sr, Pref, 95122
Dan Veditz, r log on, log off, 95117/95121
Doug Turner, sr, log on, log off, 95117/95121
Bill Law, r xpfe/bootstrap for log on, off
Alec, sr, xpfe/bootstrap for log on, off
Tiantian
=========================
Comment 15•24 years ago
|
||
Sean, we're trying to reach feature complete on this so we can begin testing and
shake everything out. The urgency is not about the UI deadline. The sooner
we're done coding this beast, the more likely we can get all the bugs fixed
before it's too late.
Assignee | ||
Comment 16•24 years ago
|
||
Assignee | ||
Comment 17•24 years ago
|
||
Assignee | ||
Comment 18•24 years ago
|
||
Status: NEW → ASSIGNED
Whiteboard: PDT → PDT; have patches; seeking r=, sr=
Comment 19•24 years ago
|
||
Marking PDT+ for the branch, provisional on getting the revies completed.
Whiteboard: PDT; have patches; seeking r=, sr= → PDT+; have patches; seeking r=, sr=
Comment 20•24 years ago
|
||
Comment on attachment 49861 [details]
Complete rdi.c file. Might be easier to read than the rdi.c part of the dif above.
> ZeroMemory(szOutSubKeyPath, dwOutSubKeyPathSize);
> /* search for the first '\' char */
> while((*ptr != 0) &&
> (*ptr != '\0') &&
> (*ptr != '\\'))
> ++ptr;
0 and '\0' are the same thing so that's a redundant check. Unless that first
test was supposed to be for 'ptr' rather than '*ptr', but if you're worried
about the input arg being null you should test that once, not in the loop.
More idiomatic would be
while ( *ptr && *ptr != '\\' )
rather than comparing against null directly.
But why not just use strchr() for this rather than roll your own?
> if((*ptr == '\0') ||
> (*ptr == '\\'))
How could it be anything else after the while-loop above? Maybe you just
want to assert the above and print "Hit by Gamma rays!" if it fails.
The code will work fine, so r=dveditz whether you fix the above or not.
I'm sure you've tested the above so safer/faster to just use that for
the branch, and consider the comments on the trunk in the future.
Attachment #49861 -
Flags: review+
Comment 21•24 years ago
|
||
Comment on attachment 49860 [details] [diff] [review]
patch #1 (moz tree)
looks good, r=dveditz
Attachment #49860 -
Flags: review+
Comment 22•24 years ago
|
||
Comment on attachment 49859 [details] [diff] [review]
patch #1 (ns tree)
r=dveditz
Attachment #49859 -
Flags: review+
Comment 23•24 years ago
|
||
Comment on attachment 49861 [details]
Complete rdi.c file. Might be easier to read than the rdi.c part of the dif above.
sr=mscott
Attachment #49861 -
Flags: superreview+
Comment 24•24 years ago
|
||
Comment on attachment 49860 [details] [diff] [review]
patch #1 (moz tree)
sr=mscott
Attachment #49860 -
Flags: superreview+
Comment 25•24 years ago
|
||
Comment on attachment 49859 [details] [diff] [review]
patch #1 (ns tree)
sr=mscott
Attachment #49859 -
Flags: superreview+
Assignee | ||
Comment 26•24 years ago
|
||
Due to a bug I found in the way the browser code restores the previous saved
setting, a new moz tree patch is coming up.
The new patch tries to detect if garbage chars have been saved in any of the
HKLM\Software\Mozilla\Desktop vars. If so, it will not restore it. If no
garbage chars have been found, the it performs its normal purpose.
Assignee | ||
Comment 27•24 years ago
|
||
Attachment #49860 -
Attachment is obsolete: true
Attachment #49861 -
Attachment is obsolete: true
Assignee | ||
Comment 28•24 years ago
|
||
Assignee | ||
Comment 29•24 years ago
|
||
Comment 30•24 years ago
|
||
Could we try to fix the browser bug as well?
What "good" data is in these keys -- aren't they potentially path or file names?
If so I have concerns about your algorithm which might reject valid multibyte
pathnames. Does isprint() evenhandle single-byte chars > x7F ok?
Assignee | ||
Comment 31•24 years ago
|
||
Browser bug is being addressed by Bill Law. I talked to Dan off line already.
We're going to do deal with the garbage chars only if the key path contains
ddeexec (since that's where the problem only happens with), in order to minimize
any collateral damage that may arise.
New patch coming up.
Assignee | ||
Comment 32•24 years ago
|
||
Assignee | ||
Comment 33•24 years ago
|
||
Assignee | ||
Comment 34•24 years ago
|
||
Attachment #50039 -
Attachment is obsolete: true
Attachment #50042 -
Attachment is obsolete: true
Attachment #50043 -
Attachment is obsolete: true
Comment 35•24 years ago
|
||
Comment on attachment 50142 [details] [diff] [review]
patch #3 (moz tree) deals with garbage chars.
>+ /* Due to a bug in the browser code that saves the previous HKEY
>+ * value it's trying to replace as garbage chars, we need to try
>+ * to detect it. If found, do not restore it. This bug only
>+ * happens for the saved ddeexec keys. */
>+ if(DdeexecCheck(szSubKey, szValue))
>+ {
>+ /* Restore the previous saved setting here */
The name of this function and the way this is written makes it sound
like you're only restoring previous DDEExec key settings.
Not worth changing if there are no other problems, but if you're ever
in this code again reversing the sense of the function would make the
code more maintainable
if (!CorruptDdeexecKey())
// Restore setting
or something like that.
r=dveditz
Attachment #50142 -
Flags: review+
Comment 36•24 years ago
|
||
rs=mscott after Dan's good review.
Assignee | ||
Comment 37•24 years ago
|
||
patches checked in to both branch and trunk.
Since this code affects the uninstallation/restoration of the settings for
mozilla/netscape 6 being the default browser, we need to still test to make sure
we didn't break restoring the settings to the previous default browser.
This new code should now also deal with restoring the previous default mail app
at uninstall time.
Status: ASSIGNED → RESOLVED
Closed: 24 years ago
Resolution: --- → FIXED
Whiteboard: PDT+; have patches; seeking r=, sr= → PDT+
Reporter | ||
Updated•24 years ago
|
Component: Composition → Simple MAPI
Updated•21 years ago
|
Product: MailNews → Core
Updated•17 years ago
|
Product: Core → MailNews Core
You need to log in
before you can comment on or make changes to this bug.
Description
•