Issue 98602 - LanguageTool 0.9.6 first time installation crashes OOo
Summary: LanguageTool 0.9.6 first time installation crashes OOo
Status: CLOSED FIXED
Alias: None
Product: General
Classification: Code
Component: code (show other issues)
Version: DEV300m39
Hardware: All All
: P3 Trivial (vote)
Target Milestone: OOo 3.1
Assignee: joerg.skottke
QA Contact: issues@framework
URL:
Keywords: regression
Depends on:
Blocks:
 
Reported: 2009-01-29 12:23 UTC by thomas.lange
Modified: 2009-03-18 13:49 UTC (History)
5 users (show)

See Also:
Issue Type: DEFECT
Latest Confirmation in: ---
Developer Difficulty: ---


Attachments
LanguageTool error message after second time installation with Windows (94.93 KB, text/plain)
2009-01-29 12:24 UTC, thomas.lange
no flags Details
stack (5.17 KB, text/plain)
2009-01-29 15:10 UTC, joachim.lingner
no flags Details

Note You need to log in before you can comment on or make changes to this issue.
Description thomas.lange 2009-01-29 12:23:32 UTC
After installing DEV300_m39 and installing LT LanguageTool 0.9.6 for the FIRST
time OOo always crashes in configmgr2.uno.dll.
A second time installation is always succsesful!
(unless you did remove uno_packages in the meantime)

The results after the second time installation seem to be different:
- under Mac OSX the second time installation just worked
- while under Windows LT crashes when it is to check text
(See attached image)
Comment 1 thomas.lange 2009-01-29 12:24:36 UTC
Created attachment 59750 [details]
LanguageTool error message after second time installation with Windows
Comment 2 thomas.lange 2009-01-29 12:26:08 UTC
TL->JL: Since the very same extension just works fine with OOO300_m15 (OOO
3.0.1) I think it is not a problem of LT. Thus can you have a look into this one?
Thanks!
Comment 3 thomas.lange 2009-01-29 12:28:17 UTC
TL->JL: I mean please look into the issue with the first time installation
crash. I hope that if this problem is solved the other one (LT crashing when
used after second time installation) will not occur anymore.
Comment 4 thomas.lange 2009-01-29 12:28:44 UTC
.
Comment 5 thomas.lange 2009-01-29 12:30:19 UTC
LT 0.9.6 can be downloaded from http://extensions.services.openoffice.org/node/1891
Comment 6 thomas.lange 2009-01-29 12:53:41 UTC
TL->JL: In DEV300_m38 pro the observation with Windows is the very same as in
DEV300_m39 pro.
Comment 7 milek_pl 2009-01-29 13:11:09 UTC
milek -> tl: this seems like a classpath problem, as we're loading rules from
the classpath. I know that for 3.1 the problem with special characters in the
path was solved (don't remember which CWS that was). That could have caused
however that the path that LT sees is different and somehow the same path is
being served twice. But that shouldn't crash OOo.
Comment 8 thomas.lange 2009-01-29 13:19:47 UTC
tl->milek: The second time installed OOo does not crash! It just seems that LT
crashes or has a serious error and thus proofreading is not working at all.
Comment 9 milek_pl 2009-01-29 13:53:40 UTC
milek->tl: Did you see the classpath error message before the crash in the first
install?
Comment 10 thomas.lange 2009-01-29 14:04:07 UTC
tl->milek: no error from LT in the first install since OOo already crashed
during that installation. Thus I doubt that LT had any chance to display error
messages at that time. >;-P
Comment 11 milek_pl 2009-01-29 14:37:05 UTC
milek->tl: one thing springs to my mind... If you did install immediately after
the crash, there's probably already uno.exe in memory, along with JVM,
LanguageTool and all its java classes. Could you please check if you have
leftover uno.exe processes in your Task Manager?
Comment 12 joachim.lingner 2009-01-29 15:07:46 UTC
To reproduce the crash in the m40 one needs to remove the dependency from the
description.xml. The extensions requires a 3.0.1 but the m40 "believes" to be a
3.0.0.

Delete the uno_packages folder from the UserInstallation.

The crash occurrs in configmgr.uno.dll, as a result of registering/merging the
Linguistic.xcu. The critical part seems to be the oor:name="-" :

 <node oor:name="GrammarCheckerList">
       <prop oor:name="-" oor:type="oor:string-list" oor:op="replace">
           <value>de.danielnaber.languagetool.openoffice.Main</value>
       </prop>
 </node>

This causes an access violation.
Comment 13 joachim.lingner 2009-01-29 15:10:18 UTC
Created attachment 59755 [details]
stack
Comment 14 joachim.lingner 2009-01-29 15:11:55 UTC
.
Comment 15 thomas.lange 2009-01-29 15:24:17 UTC
If I remember corectly that string should not have been
  <prop oor:name="-" oor:type="oor:string-list" oor:op="replace">
but
  <prop oor:name="-" oor:type="oor:string-list" oor:op="fuse">
After all the extension must not replace/remove everything else. ^^°

But I wonder why it is working in OOo 3.0.1? The same rule should apply there as
well... Any idea?
Comment 16 thomas.lange 2009-01-29 15:26:40 UTC
tl->milek: Or better those dummy lines needed in 3.0 should not be necessary
anymore at all. Please try without those lines!
Comment 17 milek_pl 2009-01-29 15:34:27 UTC
milek->tl: I remember experimenting with Linguistic.xcu when I changed "-" to
something else in 3.0.1 and that had no effect. Does deleting those fix the
crash and make LT run?
Comment 18 Stephan Bergmann 2009-01-29 15:39:07 UTC
Whether or not the content of Linuguistic.xcu as included in
LanguageTool-0.9.6.oxt is valid and necessary, the crash in configmgr is most
likely a regression introduced by
<http://eis.services.openoffice.org/EIS2/cws.ShowCWS?Path=DEV300%2Fsb99>
integrated into DEV300m35.
Comment 19 thomas.lange 2009-01-29 15:52:47 UTC
tl->milek: If deleting the entry with the "-" does not help you can assign this
one to me afterwards, since in that case me code would still have the problem
from 3.0 that I believe to be gone in 3.0.1.

But you should better check the modified LT with 3.0.1 and DEV300_m39/m38 since
it needs to work with both versions. In the worst case scenario it might be that
LT 0.9.6 can only be used with 3.0.1 and a fixed version of LT only in 3.1 and
following versions. Let's just hope that this will not what it turns out to be.
I really think I have already gotten rid of the code that required the dummy "-"
entry right after 3.0.
Comment 20 thomas.lange 2009-01-30 09:06:35 UTC
TL->QA: Because of some e-mail note by FL who experienced crashes in DEV300_m38
with a different extension only if that extension was installed for all users.
The fix should be tested by installing LT twice once  "only for me" and the
second time "for all users".
Comment 21 Stephan Bergmann 2009-02-02 14:37:03 UTC
fixed as cws/sb105/configmgr/source/tree/updatehelper.cxx@267272
Comment 22 Stephan Bergmann 2009-02-02 15:28:36 UTC
@jsk: please verify (see #desc6 and #desc13)
Comment 23 joerg.skottke 2009-02-05 13:56:37 UTC
Verified in CWS sb105, installing, disabling, enabling and removing works ok.
Comment 24 joerg.skottke 2009-03-18 13:49:08 UTC
Closing