Skip to content
This repository has been archived by the owner on Feb 28, 2024. It is now read-only.

[BUG-4961] Viewer crashes when attempting to upload a corrupted dae instead of failing gracefully. #13263

Open
1 task
sl-service-account opened this issue Jan 25, 2014 · 1 comment

Comments

@sl-service-account
Copy link

sl-service-account commented Jan 25, 2014

Steps to Reproduce

  • Download the attached dae file.

  • Go to Build -> Upload -> Model and choose this dae

    Observed Behaviour

    Viewer crashes to desktop just as the upload floater opens.
    Logs attached.

    Callstack:

    Operating system: Windows NT
                      6.0.6002 Service Pack 2
    CPU: x86
         GenuineIntel family 6 model 23 stepping 10
         4 CPUs
    
    Crash reason:  EXCEPTION_ACCESS_VIOLATION_READ
    Crash address: 0x10
    
    Thread 31 (crashed)
     0  SecondLifeTest.exe!load_face_from_dom_triangles(std::vector<LLVolumeFace,std::allocator<LLVolumeFace> > &,std::vector<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::allocator<std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > &,daeSmartRef<domTriangles> &) [llmodel.cpp : 184 + 0x3]
        eip = 0x0178d4b9   esp = 0x2a54f02c   ebp = 0x2a54f270   ebx = 0x2a54f278
        esi = 0x1f5a5d88   edi = 0x1001bec0   eax = 0x00000000   ecx = 0x1f5a5e68
        edx = 0x2a54f064   efl = 0x00010202
        Found by: given as instruction pointer in context
     1  ntdll.dll + 0x664ee
        eip = 0x770f64ef   esp = 0x2a54f03c   ebp = 0x2a54f270
        Found by: stack scanning
     2  SecondLifeTest.exe!LLModel::addVolumeFacesFromDomMesh(domMesh *) [llmodel.cpp : 900 + 0x10]
        eip = 0x0178e6ed   esp = 0x2a54f278   ebp = 0x2a54f514
        Found by: previous frame's frame pointer
     3  SecondLifeTest.exe!LLModel::createVolumeFacesFromDomMesh(domMesh *) [llmodel.cpp : 948 + 0xa]
        eip = 0x01790c06   esp = 0x2a54f51c   ebp = 0x2a54f53c
        Found by: call frame info
     4  SecondLifeTest.exe!LLModel::loadModelFromDomMesh(domMesh *) [llmodel.cpp : 1526 + 0xc]
        eip = 0x0178c4e8   esp = 0x2a54f544   ebp = 0x2a54f5ec
        Found by: call frame info
     5  SecondLifeTest.exe!LLModelLoader::doLoadModel() [llfloatermodelpreview.cpp : 1621 + 0x5]
        eip = 0x00fdf088   esp = 0x2a54f5f4   ebp = 0x2a54fbb4
        Found by: call frame info
     6  SecondLifeTest.exe!LLModelLoader::run() [llfloatermodelpreview.cpp : 1478 + 0x4]
        eip = 0x00fee81f   esp = 0x2a54fbbc   ebp = 0x2a54fbcc
        Found by: call frame info
     7  SecondLifeTest.exe!LLThread::staticRun(apr_thread_t *,void *) [llthread.cpp : 94 + 0x8]
        eip = 0x01a496c8   esp = 0x2a54fbd4   ebp = 0x2a54fbd8
        Found by: call frame info
     8  SecondLifeTest.exe!dummy_worker [thread.c : 79 + 0x9]
        eip = 0x01e78822   esp = 0x2a54fbe0   ebp = 0x2a54fbec
        Found by: call frame info
     9  msvcr100.dll!_callthreadstartex [threadex.c : 314 + 0x5]
        eip = 0x71eac6de   esp = 0x2a54fbf4   ebp = 0x2a54fc24
        Found by: call frame info
    10  msvcr100.dll!_threadstartex [threadex.c : 292 + 0x4]
        eip = 0x71eac788   esp = 0x2a54fc2c   ebp = 0x2a54fc30
        Found by: call frame info
    11  kernel32.dll + 0x4d2e8
        eip = 0x7650d2e9   esp = 0x2a54fc38   ebp = 0x2a54fc3c
        Found by: call frame info
    12  ntdll.dll + 0x41602
        eip = 0x770d1603   esp = 0x2a54fc44   ebp = 0x2a54fc7c
        Found by: previous frame's frame pointer
    13  ntdll.dll + 0x415d5
        eip = 0x770d15d6   esp = 0x2a54fc84   ebp = 0x2a54fc94
        Found by: previous frame's frame pointer

    Expected Behaviour

    Viewer should never crash when attempting to upload a "bad" mesh. It should fail gracefully with an error message.

    Other Information

    I do not know what is "bad" about this dae (Im a mesh noob), it was created using the inworld mesh studio creation tool.
    The dae will not open in Blender either.
    Blender gives the following error in console:

    found bundled python: C:\Program Files\Blender Foundation\Blender\2.63\python
    Cannot create image.
    Mesh ɧ has no vertices.
    Ignoring mesh ɧ
    Couldn't find an image by UID.
    Couldn't find a mesh by UID.
    cannot find Object for Node with id="Root"

Attachments

Links

Related

Original Jira Fields
Field Value
Issue BUG-4961
Summary Viewer crashes when attempting to upload a corrupted dae instead of failing gracefully.
Type Bug
Priority Unset
Status Accepted
Resolution Accepted
Reporter Whirly Fizzle (whirly.fizzle)
Created at 2014-01-25T04:58:58Z
Updated at 2014-06-01T01:24:11Z
{
  'Business Unit': ['Platform'],
  'Date of First Response': '2014-01-27T11:47:47.531-0600',
  'System': 'SL Viewer',
  'Target Viewer Version': 'viewer-development',
  'What just happened?': '.',
  'What were you doing when it happened?': 'Filling in',
  'What were you expecting to happen instead?': '.',
}
@sl-service-account
Copy link
Author

Alexa Linden commented at 2014-01-27T17:47:48Z

Repros on Second Life 3.6.14 (285499) Jan 22 2014 01:09:48 (Second Life Release)

https://osiris.lindenlab.com/viewer_crash_browser/index.php?filter_id=35713

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

1 participant