http://bugs.winehq.org/show_bug.cgi?id=30313
Bug #: 30313 Summary: Microsoft Office Communicator 2007 R2 Trial requires ISAXXMLReader feature "namespace-prefixes" Product: Wine Version: 1.5.1 Platform: x86 OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: msxml3 AssignedTo: wine-bugs@winehq.org ReportedBy: focht@gmx.net Classification: Unclassified
Hello,
Microsoft Office Communicator 2007 R2 Trial fails due to missing support for ISAXXMLReader feature "namespace-prefixes"
Prerequisite:
Set WinVer to >= Windows Vista for installation due to MSXML6 (SP1) requirement.
Running the app after installation exhibits an error message about trial being already expired (most likely time bombed). Just add any 23-digit number as product key to prevent this, e.g.:
(one liner):
--- snip --- $ wine reg add "HKLM\Software\Microsoft\Communicator\3.5\Registration" /v "ProductID" /t "REG_SZ" /d "01234567890123456789012" --- snip ---
Relevant trace log:
--- snip --- ... 0024:trace:msxml:DOMClassFactory_CreateInstance (nil) {a4f96ed0-f829-476e-81c0-cdc7bd2a0802} 0x32fba4 0024:trace:msxml:SAXXMLReader_create ((nil), 0x32fa3c) 0024:Call ntdll.RtlAllocateHeap(00110000,00000000,000000d4) ret=7d55a751 0024:Ret ntdll.RtlAllocateHeap() retval=00158948 ret=7d55a751 0024:trace:msxml:SAXXMLReader_create returning iface 0x158958 0024:trace:msxml:saxxmlreader_QueryInterface 0x158948 {a4f96ed0-f829-476e-81c0-cdc7bd2a0802} 0x32fba4 0024:trace:msxml:saxxmlreader_AddRef 0x158948 0024:trace:msxml:saxxmlreader_Release 0x158948 0024:trace:msxml:DOMClassFactory_Release (0x158648) ref = 0 ... 0024:trace:msxml:internal_putContentHandler (0x158948)->(0x157c2c) ... 0024:trace:msxml:internal_putErrorHandler (0x158948)->(0x157c3c) ... 0024:trace:msxml:saxxmlreader_putFeature (0x158948)->(L"http://xml.org/sax/features/namespace-prefixes" 1) 0024:fixme:msxml:saxxmlreader_putFeature (0x158948)->(L"http://xml.org/sax/features/namespace-prefixes" 1) stub ... 0024:trace:msxml:saxxmlreader_Release 0x158948 ... 0024:Call KERNEL32.RaiseException(e06d7363,00000001,00000003,0032fb64) ret=7ed01d61 0024:trace:seh:raise_exception code=e06d7363 flags=1 addr=0x7b839357 ip=7b839357 tid=0024 0024:trace:seh:raise_exception info[0]=19930520 0024:trace:seh:raise_exception info[1]=0032fc2b 0024:trace:seh:raise_exception info[2]=22290a60 0024:trace:seh:raise_exception eax=7b826381 ebx=7b8aa708 ecx=19930520 edx=0032fa84 esi=0032fb60 edi=0032fae0 0024:trace:seh:raise_exception ebp=0032fac8 esp=0032fa64 cs=0023 ds=002b es=002b fs=0063 gs=006b flags=00000283 0024:trace:seh:call_stack_handlers calling handler at 0x22243a3a code=e06d7363 flags=1 0024:trace:seh:cxx_frame_handler handling C++ exception rec 0x32fa70 frame 0x32fc34 trylevel 0 descr 0x22290abc nested_frame (nil) 0024:trace:seh:dump_exception_type flags 0 destr (nil) handler (nil) type info 0x22290a70 0024:trace:seh:dump_exception_type 0: flags 0 type 0x222e80f8 {vtable=0x21c844dc name=.?AVCApplicationLayerException@@ ()} offsets 0,-1,0 size 1 copy ctor 0x21ec959f 0024:trace:seh:dump_exception_type 1: flags 0 type 0x222e721c {vtable=0x21c844dc name=.?AVCNonFatalException@@ ()} offsets 0,-1,0 size 1 copy ctor 0x21ec959f 0024:trace:seh:dump_function_descr magic 19930522 0024:trace:seh:dump_function_descr unwind table: 0x22290a98 2 0024:trace:seh:dump_function_descr 0: prev -1 func (nil) 0024:trace:seh:dump_function_descr 1: prev -1 func (nil) 0024:trace:seh:dump_function_descr try table: 0x22290aa8 1 0024:trace:seh:dump_function_descr 0: start 0 end 0 catchlevel 1 catch 0x22290ae0 4 0024:trace:seh:dump_function_descr 0: flags 9 offset -40 handler 0x21ea46f7 type 0x222e80f8 {vtable=0x21c844dc name=.?AVCApplicationLayerException@@ ()} 0024:trace:seh:dump_function_descr 1: flags 9 offset -32 handler 0x21ea4727 type 0x222e721c {vtable=0x21c844dc name=.?AVCNonFatalException@@ ()} 0024:trace:seh:dump_function_descr 2: flags 9 offset -36 handler 0x21ea4742 type 0x222e7240 {vtable=0x21c844dc name=.?AVCFatalException@@ ()} 0024:trace:seh:dump_function_descr 3: flags 40 offset 0 handler 0x21ea4756 type (nil) {} ... 0024:Call user32.DestroyWindow(0001007a) ret=22107cb7 --- snip ---
Debugger:
--- snip --- Backtrace: =>0 0x7d524247 saxxmlreader_putFeature(iface=0x137b20, feature="http://xml.org/sax/features/namespace-prefixes", value=0x6f00) [/home/focht/projects/wine/wine-git/dlls/msxml3/saxreader.c:2762] in msxml3 (0x0033fb64) 1 0x21fbefbd in ocapi (+0x33efbc) (0x0033fba8) 2 0x21fbf1c1 in ocapi (+0x33f1c0) (0x0033fbc0) 3 0x21fbf330 in ocapi (+0x33f32f) (0x0033fbe0) 4 0x21fbf4a0 in ocapi (+0x33f49f) (0x0033fc00) 5 0x21ea4619 in ocapi (+0x224618) (0x0033fc40) 6 0x0040b4b6 in communicator (+0xb4b5) (0x0033fcbc) ... --- snip ---
MSDN: http://msdn.microsoft.com/en-us/library/aa923298.aspx
--- quote --- "http://xml.org/sax/features/namespace-prefixes"
True Report the original prefixed names and attributes used for namespace declarations in the QNames (qualified names) field. False Do not report attributes used for namespace declarations and, optionally, do not report original prefixed names. Access Read-only for parsing; read/write when not parsing. ... The values for the namespaces and namespace-prefixes features may be available only in a specific context, such as before, during, or after a parse. --- quote ---
Source: http://source.winehq.org/git/wine.git/blob/2cbd6a63dfb39052cd454ed3d67483885...
--- snip --- 2758 static HRESULT WINAPI saxxmlreader_putFeature( 2759 IVBSAXXMLReader* iface, 2760 const WCHAR *feature, 2761 VARIANT_BOOL value) 2762 { 2763 saxreader *This = impl_from_IVBSAXXMLReader( iface ); 2764 2765 TRACE("(%p)->(%s %x)\n", This, debugstr_w(feature), value); 2766 2767 if (!strcmpW(FeatureExternalGeneralEntitiesW, feature) && value == VARIANT_FALSE) 2768 return set_feature_value(This, ExternalGeneralEntities, value); 2769 2770 if (!strcmpW(FeatureExternalParameterEntitiesW, feature) && value == VARIANT_FALSE) 2771 return set_feature_value(This, ExternalParameterEntities, value); 2772 2773 if (!strcmpW(FeatureLexicalHandlerParEntitiesW, feature)) 2774 { 2775 FIXME("(%p)->(%s %x) stub\n", This, debugstr_w(feature), value); 2776 return set_feature_value(This, LexicalHandlerParEntities, value); 2777 } 2778 2779 if (!strcmpW(FeatureProhibitDTDW, feature)) 2780 { 2781 FIXME("(%p)->(%s %x) stub\n", This, debugstr_w(feature), value); 2782 return set_feature_value(This, ProhibitDTD, value); 2783 } 2784 2785 if (!strcmpW(FeatureNamespacesW, feature) && value == VARIANT_TRUE) 2786 return set_feature_value(This, Namespaces, value); 2787 2788 FIXME("(%p)->(%s %x) stub\n", This, debugstr_w(feature), value); 2789 return E_NOTIMPL; 2790 } --- snip ---
'winetricks msxml6' works around and allows to run the app further (into next bug).
There is already bug 12452 which covered some ISAXXMLReader feature sets but it has been abandoned as it seems.
Regards
http://bugs.winehq.org/show_bug.cgi?id=30313
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download URL| |http://www.microsoft.com/do | |wnload/en/details.aspx?disp | |laylang=en&id=8468
--- Comment #1 from Anastasius Focht focht@gmx.net 2012-03-30 18:03:54 CDT --- Hello,
filling fields ...
$ du -sh CommunicatorEval.msi 15M CommunicatorEval.msi
$ sha1sum CommunicatorEval.msi b2a1cc95362b93aef6dfbf9987cc5c4ca6c8038d CommunicatorEval.msi
$ wine --version wine-1.5.1
Regards
http://bugs.winehq.org/show_bug.cgi?id=30313
--- Comment #2 from Nikolay Sivov bunglehead@gmail.com 2012-04-19 13:46:13 CDT --- Commits f27159a59f11c835ae219fb837c342612cc083c7 and 54df4811c61cfd22787f46ea7ea2d6f555e74ade should help. Please retest.
http://bugs.winehq.org/show_bug.cgi?id=30313
--- Comment #3 from Anastasius Focht focht@gmx.net 2012-04-19 15:29:20 CDT --- Hello Nikolay,
--- quote --- Commits f27159a59f11c835ae219fb837c342612cc083c7 and 54df4811c61cfd22787f46ea7ea2d6f555e74ade should help. Please retest. --- quote ---
Certainly - but only if you include "NamespacePrefixes" feature as accepted case ...
Source:
http://source.winehq.org/git/wine.git/blob/1554cbc4d75c3d6e1eb5c51ce8b50b4a8...
--- snip --- ... 2849 /* accepted cases */ 2850 if ((feature == ExternalGeneralEntities && value == VARIANT_FALSE) || 2851 (feature == ExternalParameterEntities && value == VARIANT_FALSE) || 2852 feature == Namespaces) 2853 { 2854 return set_feature_value(This, feature, value); 2855 } --- snip ---
So there is still one minor thing left ;-)
Regards
http://bugs.winehq.org/show_bug.cgi?id=30313
--- Comment #4 from Nikolay Sivov bunglehead@gmail.com 2012-04-19 21:59:34 CDT --- Oh, sorry :). I confused these two, will test 'namespace-prefixes' too. Thanks.
http://bugs.winehq.org/show_bug.cgi?id=30313
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Fixed by SHA1| |4fb5872bd233c924cadbf3a4011 | |dcd622765e047 Status|NEW |RESOLVED Resolution| |FIXED
--- Comment #5 from Anastasius Focht focht@gmx.net 2012-04-20 15:23:22 CDT --- Hello,
this is fixed by commit http://source.winehq.org/git/wine.git/commitdiff/4fb5872bd233c924cadbf3a4011...
--- snip --- 0009:trace:msxml:DllGetClassObject {88d96a0c-f192-11d4-a65f-0040963251e5} {00000001-0000-0000-c000-000000000046} 0x32fb20 0009:trace:msxml:DOMClassFactory_AddRef (0x139e60) ref = 1 0009:trace:msxml:DOMClassFactory_CreateInstance (nil) {a4f96ed0-f829-476e-81c0-cdc7bd2a0802} 0x32fba4 0009:trace:msxml:SAXXMLReader_create ((nil), 0x32fac0) 0009:trace:msxml:SAXXMLReader_create returning iface 0x13a088 0009:trace:msxml:saxxmlreader_QueryInterface 0x13a078 {a4f96ed0-f829-476e-81c0-cdc7bd2a0802} 0x32fba4 0009:trace:msxml:saxxmlreader_AddRef 0x13a078 0009:trace:msxml:saxxmlreader_Release 0x13a078 0009:trace:msxml:DOMClassFactory_Release (0x139e60) ref = 0 0009:trace:msxml:internal_putContentHandler (0x13a078)->(0x13945c) 0009:trace:msxml:internal_putProperty (0x13a078)->(L"http://xml.org/sax/properties/lexical-handler" {VT_UNKNOWN: 0x139474}) 0009:trace:msxml:internal_putErrorHandler (0x13a078)->(0x13946c) 0009:trace:msxml:saxxmlreader_putFeature (0x13a078)->(L"http://xml.org/sax/features/namespace-prefixes" 1) 0009:trace:msxml:saxxmlreader_putFeature (0x13a078)->(L"http://xml.org/sax/features/external-general-entities" 0) 0009:trace:msxml:saxxmlreader_putFeature (0x13a078)->(L"http://xml.org/sax/features/external-parameter-entities" 0) 0009:trace:msxml:saxxmlreader_AddRef 0x13a078 0009:trace:msxml:saxxmlreader_Release 0x13a078 --- snip ---
Thanks Nikolay
$ wine --version wine-1.5.2-191-gd080774
Regards
http://bugs.winehq.org/show_bug.cgi?id=30313
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #6 from Alexandre Julliard julliard@winehq.org 2012-04-27 12:59:34 CDT --- Closing bugs fixed in 1.5.3.
https://bugs.winehq.org/show_bug.cgi?id=30313
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- URL|http://www.microsoft.com/do |https://web.archive.org/web |wnload/en/details.aspx?disp |/20130312155123/http://down |laylang=en&id=8468 |load.microsoft.com/download | |/E/2/B/E2B88A20-CC84-4F29-8 | |C15-751ADFB8F0BF/Communicat | |orEval.msi
--- Comment #7 from Anastasius Focht focht@gmx.net --- Hello folks,
adding stable download link via Internet Archive for documentation.
https://web.archive.org/web/20130312155123/http://download.microsoft.com/dow...
https://www.virustotal.com/gui/file/8b5a177b9367101e262f0e31bc3685e07a898b84...
$ sha1sum CommunicatorEval.msi b2a1cc95362b93aef6dfbf9987cc5c4ca6c8038d CommunicatorEval.msi
$ du -sh CommunicatorEval.msi 15M CommunicatorEval.msi
Regards