- Home /
Crash: R6025 pure virtual function call in webplayer_win.dll
Since yesterday the webplayer in Chrome and Firefox regular crashes on multiple machines with the following Runtime Error:
R6025
- pure virtual function call
This is the problem signature of the crash:
Problem signature:
Problem Event Name: APPCRASH
Anwendungsname: chrome.exe
Anwendungsversion: 23.0.1271.95
Anwendungszeitstempel: 50b5708f
Fehlermodulname: webplayer_win.dll
Fehlermodulversion: 4.0.0.62010
Fehlermodulzeitstempel: 50a152c3
Ausnahmecode: 40000015
Ausnahmeoffset: 004365a0
Betriebsystemversion: 6.1.7601.2.1.0.768.3
Gebietsschema-ID: 1031
Zusatzinformation 1: c5c2
Zusatzinformation 2: c5c29e8f4f6bf83b41795bdf9997754d
Zusatzinformation 3: 6a95
Zusatzinformation 4: 6a95f20d9ec4391d3268e90394cee429
We tested older versions of our game, that none of our recent changes is causing this issue. Is there a work around for this crash? A quick help would be very appreciated. Thanks in advance
UPDATE: The crash only occurs with Unity Engine 4.0.0 It does not occur with Unity Engine 3.5.6f4. Looks like Unity Engine 4 is not 100 % backwards compatible.
UPDATE 2: What do I have to do, to inform the Unity team that this bug has been introduced with Unity 4.0?
Does this happen in another platform(editor, .exe, mobile etc.) or a different browser?
We are not able to reproduce the crash with Standalone players or the editor. It only happens with the webplayer.
We have not tried to reproduce the crash on any other operation system than Windows.
Answer by Dmitry Pyalov · Dec 15, 2012 at 12:59 AM
Unity 4.0 is rather glitchy. Even after the release. I've converted my 3.5 project to 4.0 and it's behaving strangely. It seems like the Unity team has modified the Mono core heavily, cause I've definitely got low level bugs while building for iOS. One of them is weird comparison of enums (variable, containing one value equals to completely different constant), another is a strange call to .ToString() method when it shouldn't (as if it has got wrong value from the vtable).
So the best option is to AVOID UNITY 4.0 COMPLETELY as it is not ready for production yet (shame on Unity's QA or Management). Right now I'm converting my project back to 3.5 - requires a bit of manual work.
Another good thing is to file a bug report via Unity Bug Reporter app (it's bundled together with the Unity app) and to attach your project to help the devs pinpoint the bug quickly.
P.S. There are rumors that Unity's support is not very helpful and responsive when it goes to such bugs :)
Answer by TylerGlaiel · Feb 16, 2013 at 01:21 AM
Do you have collision detection enabled on any particles systems? I had this same crash and it seemed to be coming from there
Answer by RKSandswept · Dec 18, 2013 at 02:36 AM
We get this crash on the PC in the editor and not in the editor. It has appeared since we updated to 4.x. We would be glad to work directly with the Unity team on reproducing this.
-------------- More --------------------- I greatly reduced this bug by fixing a mistake in our code. Don't do this..
class Foo { public static Dictionary allFoos = new Dictionary();
public int uid;
public Foo( int uid )
{
this.uid = uid;
allFoo[uid] = this;
}
~Foo()
{
// DANGER - Because this Foo is in the list it will never get garbage collected
// so this never gets called and so garbage builds up forever.
allFoo.Remove(uid);
}
}
Our code has a static method to remove world objects and because the destructor never got called only partial cleanup was done. This later confused Unity GameObject and caused the culling algorithm to really get trashed. Instead all WorldObject subclasses have a virtual preDelete() method to do cleanup and list removal.
-------------- More ---------------------
I used Visual Studio to attach to the crashed game. The stack shows it died in scene culling, which I believe is completely new code in Unity 4.x
the stack is... ( Greater than and less than symbols changed to GT and LT so HTML is not trashed . )
Not Flagged 21856 0 Main Thread Main Thread Unity.exe!__crtMessageBoxW Normal [External Code] [Frames below may be incorrect and/or missing, no symbols loaded for user32.dll] Unity.exe!__crtMessageBoxW(const wchar_t * lpText, const wchar_t * lpCaption, unsigned int uType) Line 97 GameOverlayRenderer.dll!223918e9() GameOverlayRenderer.dll!223918e9() Unity.exe!__crtMessageBoxW(const wchar_t * lpText, const wchar_t * lpCaption, unsigned int uType) Line 158 Unity.exe!_NMSG_WRITE(int rterrnum) Line 290 Unity.exe!_purecall() Line 56 Unity.exe!CullAllPerObjectLights(const CullingDynamicArrayLTVisibleNodeGT & visibleNodes, const ActiveLights & lights, const int renderPath, CullingDynamicArray & forwardLightIndices, CullingDynamicArray LT unsigned int GT & forwardLightOffsets) Line 132 Unity.exe!CullLights(const SceneCullingParameters & cullingParameters, CullResults & results) Line 178 Unity.exe!CullScene(SceneCullingParameters & cullingParameters, CullResults & results) Line 233 Unity.exe!Camera::CustomCull(const CameraCullingParameters & parameters, CullResults & results) Line 993 Unity.exe!Camera::Cull(CullResults & results) Line 801 Unity.exe!RenderManager::RenderCameras() Line 89 Unity.exe!RenderGameViewCameras(const RectTLTfloatGT & guiRect, bool gizmos, bool gui) Line 178 Unity.exe!EditorGUIUtility_CUSTOM_INTERNAL_CALL_RenderGameViewCameras(const RectTLTfloatGT & cameraRect, short gizmos, short gui) Line 224 [External Code] mono.dll!mono_jit_runtime_invoke(_MonoMethod * method, void * obj, void * * params, MonoObject * * exc) Line 4889 mono.dll!mono_runtime_invoke(_MonoMethod * method, void * obj, void * * params, MonoObject * * exc) Line 2618 mono.dll!mono_runtime_invoke_array(_MonoMethod * method, void * obj, MonoArray * params, MonoObject * * exc) Line 3822 mono.dll!ves_icall_InternalInvoke(_MonoReflectionMethod * method, MonoObject * this, MonoArray * params, _MonoException * * exc) Line 2856 [External Code] mono.dll!mono_jit_runtime_invoke(_MonoMethod * method, void * obj, void * * params, MonoObject * * exc) Line 4889 mono.dll!mono_runtime_invoke(_MonoMethod * method, void * obj, void * * params, MonoObject * * exc) Line 2618 Unity.exe!scripting_method_invoke(ScriptingMethod * method, MonoObject * object, ScriptingArguments & arguments, MonoException * * exception) Line 183 Unity.exe!ScriptingInvocationNoArgs::Invoke(MonoException * * exception) Line 97 Unity.exe!MonoBehaviour::DoGUI(MonoBehaviour::GUILayoutType layoutType, int skin) Line 401 Unity.exe!GUIView::OnInputEvent(InputEvent & event) Line 1962 Unity.exe!GUIView::DoPaint() Line 1198 Unity.exe!GUIView::RepaintAll(bool performAutorepaint) Line 2233 Unity.exe!Application::UpdateScene(bool doRepaint) Line 2337 Unity.exe!Application::UpdateSceneIfNeeded() Line 2216 Unity.exe!Application::TickTimer() Line 1319 Unity.exe!MainMessageLoop() Line 336 Unity.exe!WinMain(HINSTANCE__ * hInst, HINSTANCE__ * hPrev, char * szCmdLine, int nCmdShow) Line 848 Unity.exe!__tmainCRTStartup() Line 275 [External Code]
Your answer
Follow this Question
Related Questions
webplayer Chrome not working, Firefox ok 7 Answers
Unity Web Player Crashes On Application.ExternalCall 0 Answers
Unity Web player crashes every alternate refresh in Chrome 0 Answers
Chrome: Preventing Unity Plugin from Crashing if Multiple Windows w Players opened 0 Answers
Unity 64 bit support Question 2 Answers