Closed
Bug 221446
Opened 22 years ago
Closed 20 years ago
Examine the usefulness of Mozilla as Managed Code / .NET / CLR
Categories
(SeaMonkey :: Build Config, enhancement)
Tracking
(Not tracked)
RESOLVED
WONTFIX
People
(Reporter: murphye, Unassigned)
Details
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.5b) Gecko/20030827
Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.5b) Gecko/20030827
What does anyone here think of the possibility of building Mozilla as managed
code (running in the .NET CLR)? I was able to do this (add /clr):
CFLAGS="$CFLAGS -TC /clr -nologo"
CXXFLAGS="$CXXFLAGS -TP /clr -nologo"
and Mozilla compiled as managed code without any errors. When I ran it, I got an
error about PRThread, but the CLR debugger (in VS.NET) popped up and showed me
xpcom/glue/nsGenericFactory.cpp where it thinks the error(s) are.
From the perpective of .NET developers, having Mozilla available as managed code
would be a very powerful feature because now Mozilla could integrate with other
.NET code.
Here is a link that provides some brief insight into this thinking:
http://www.vertigosoftware.com/Quake2.htm. They were able to extend Quake 2 with
pure .NET code, which is very cool.
Reproducible: Always
Steps to Reproduce:
Comment 1•22 years ago
|
||
I will investigate this as soon as i can get my VC7 build to work :)
Status: NEW → ASSIGNED
Reporter | ||
Comment 2•22 years ago
|
||
I played around with this a little more in the debug mode, I got this:
'mozilla.exe': Loaded 'C:\mozilla\dist\bin\mozilla.exe', Symbols loaded.
'mozilla.exe': Loaded 'C:\WINDOWS\system32\ntdll.dll', No symbols loaded.
'mozilla.exe': Loaded 'C:\WINDOWS\system32\kernel32.dll', No symbols loaded.
'mozilla.exe': Loaded 'C:\mozilla\dist\bin\nspr4.dll', Symbols loaded.
'mozilla.exe': Loaded 'C:\WINDOWS\system32\advapi32.dll', No symbols loaded.
'mozilla.exe': Loaded 'C:\WINDOWS\system32\rpcrt4.dll', No symbols loaded.
'mozilla.exe': Loaded 'C:\WINDOWS\system32\wsock32.dll', No symbols loaded.
'mozilla.exe': Loaded 'C:\WINDOWS\system32\ws2_32.dll', No symbols loaded.
'mozilla.exe': Loaded 'C:\WINDOWS\system32\msvcrt.dll', No symbols loaded.
'mozilla.exe': Loaded 'C:\WINDOWS\system32\ws2help.dll', No symbols loaded.
'mozilla.exe': Loaded 'C:\WINDOWS\system32\msvcr71d.dll', Symbols loaded.
'mozilla.exe': Loaded 'C:\mozilla\dist\bin\plc4.dll', Symbols loaded.
'mozilla.exe': Loaded 'C:\WINDOWS\system32\user32.dll', No symbols loaded.
'mozilla.exe': Loaded 'C:\WINDOWS\system32\gdi32.dll', No symbols loaded.
'mozilla.exe': Loaded 'C:\WINDOWS\system32\shell32.dll', No symbols loaded.
'mozilla.exe': Loaded 'C:\WINDOWS\system32\shlwapi.dll', No symbols loaded.
'mozilla.exe': Loaded 'C:\WINDOWS\system32\msvcp71d.dll', Symbols loaded.
'mozilla.exe': Loaded
'C:\WINDOWS\WinSxS\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.0.0_x-ww_1382d70a\comctl32.dll',
No symbols loaded.
'mozilla.exe': Loaded 'C:\mozilla\dist\bin\xpcom.dll', Symbols loaded.
'mozilla.exe': Loaded 'C:\WINDOWS\system32\mscoree.dll', No symbols loaded.
'mozilla.exe': Loaded 'C:\mozilla\dist\bin\plds4.dll', Symbols loaded.
'mozilla.exe': Loaded 'C:\WINDOWS\system32\ole32.dll', No symbols loaded.
'mozilla.exe': Loaded
'C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\mscorwks.dll', No symbols loaded.
'mozilla.exe': Loaded
'C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\msvcr71.dll', Symbols loaded.
'mozilla.exe': Loaded 'C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\fusion.dll',
No symbols loaded.
'mozilla.exe': Loaded
'C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\mscorlib.dll', No symbols loaded.
'mozilla.exe': Loaded
'C:\WINDOWS\assembly\NativeImages1_v1.1.4322\mscorlib\1.0.5000.0__b77a5c561934e089_75341187\mscorlib.dll',
No symbols loaded.
'mozilla.exe': Loaded
'C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\mscorjit.dll', No symbols loaded.
'mozilla.exe': Loaded 'C:\WINDOWS\system32\nview.dll', No symbols loaded.
'mozilla.exe': Loaded 'C:\WINDOWS\system32\psapi.dll', No symbols loaded.
'mozilla.exe': Loaded 'C:\WINDOWS\system32\version.dll', No symbols loaded.
'mozilla.exe': Loaded 'C:\WINDOWS\system32\olepro32.dll', No symbols loaded.
'mozilla.exe': Loaded 'C:\WINDOWS\system32\oleaut32.dll', No symbols loaded.
'mozilla.exe': Loaded 'C:\WINDOWS\system32\ddraw.dll', No symbols loaded.
'mozilla.exe': Loaded 'C:\WINDOWS\system32\dciman32.dll', No symbols loaded.
'mozilla.exe': Loaded 'C:\WINDOWS\system32\clbcatq.dll', No symbols loaded.
'mozilla.exe': Loaded 'C:\WINDOWS\system32\comres.dll', No symbols loaded.
First-chance exception at 0x77e6d756 in mozilla.exe: 0xE0434F4D: 0xe0434f4d.
First-chance exception at 0x77e6d756 in mozilla.exe: 0xE0434F4D: 0xe0434f4d.
First-chance exception at 0x77e6d756 in mozilla.exe: 0xE0434F4D: 0xe0434f4d.
Unhandled exception at 0x77e6d756 in mozilla.exe: 0xE0434F4D: 0xe0434f4d.
Error comes up at malloc.c line 212:
> msvcr71d.dll!_heap_alloc_base(unsigned int size=0) Line 212 C
That came from the call stack:
kernel32.dll!77e6d756()
kernel32.dll!77e6d756()
mscorwks.dll!791b9d02()
mscorwks.dll!791be271()
mscorwks.dll!791be286()
mscorwks.dll!7921020d()
kernel32.dll!77e6d756()
mscorwks.dll!79210190()
mscorwks.dll!79210144()
mscorwks.dll!79256dcb()
ntdll.dll!77f588f5()
> msvcr71d.dll!_heap_alloc_base(unsigned int size=0) Line 212 C
mscorwks.dll!791d6a7e()
xpcom.dll!RegisterGenericFactory(nsIComponentRegistrar * registrar=0x002ab378,
const nsModuleComponentInfo * info=0x100a7f48) Line 210 + 0xd C++
xpcom.dll!NS_InitXPCOM2(nsIServiceManager * * result=0x0012ff3c, nsIFile *
binDirectory=0x00000000, nsIDirectoryServiceProvider *
appFileLocationProvider=0x002a5060) Line 558 + 0x1b C++
mozilla.exe!NS_InitXPCOM2(nsIServiceManager * * result=0x0012ff3c, nsIFile *
binDirectory=0x00000000, nsIDirectoryServiceProvider *
appFileLocationProvider=0x002a5060) Line 160 + 0x14 C++
mozilla.exe!GRE_Startup() Line 282 + 0x23 C++
mozilla.exe!main(int argc=1, char * * argv=0x002a4fa8) Line 1590 + 0x5 C++
mozilla.exe!mainCRTStartup() Line 398 + 0x11 C
kernel32.dll!77e7eb69()
I am not a C programmer, so I don't know what this means. Any insight would be
appreciated.
Reporter | ||
Comment 3•22 years ago
|
||
Oops, I forgot this disassembly (where the fault is):
...
#endif /* _WIN64 */
return HeapAlloc(_crtheap, 0, size);
1021A6A3 mov edx,dword ptr [size]
1021A6A6 push edx
1021A6A7 push 0
1021A6A9 mov eax,dword ptr [__crtheap (1027F5B4h)]
1021A6AE push eax
1021A6AF call dword ptr [__imp__HeapAlloc@12 (10267094h)]
}
ecx,dword ptr [ebp-10h] << Fault is here
...
Updated•21 years ago
|
Assignee: leaf → cmp
Status: ASSIGNED → NEW
Updated•21 years ago
|
Product: Browser → Seamonkey
Comment 4•21 years ago
|
||
Being able to extend Mozilla via pure-managed code doesn't require Mozilla
itself to be built 100% managed. Some day I'll have time to return to
xpcom.net, which should suffice.
(I'm not really interested at all in mozilla-built-as-managed, removing from cc:)
Comment 5•20 years ago
|
||
Mass reassign of open bugs for chase@mozilla.org to build@mozilla-org.bugs.
Assignee: chase → build
Updated•20 years ago
|
Assignee: build → nobody
QA Contact: build-config
Updated•20 years ago
|
Status: NEW → RESOLVED
Closed: 20 years ago
Resolution: --- → WONTFIX
You need to log in
before you can comment on or make changes to this bug.
Description
•