Invalid read in oxide::CompositorOutputSurfaceGL::DiscardBuffer
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Oxide |
Fix Released
|
High
|
Chris Coulson | ||
1.6 |
Fix Released
|
High
|
Chris Coulson |
Bug Description
I'm seeing errors like this in valgrind:
==6299== Invalid read of size 4
==6299== at 0x825ACAD: gpu::gles2:
==6299== by 0x72B1349: oxide::
==6299== by 0x72B13AF: oxide::
==6299== by 0x72B181F: DiscardBackbuffer (stl_construct.
==6299== by 0x72B181F: oxide::
==6299== by 0x72B1838: oxide::
==6299== by 0x7C2E002: operator() (scoped_ptr.h:128)
==6299== by 0x7C2E002: ~scoped_ptr_impl (scoped_ptr.h:222)
==6299== by 0x7C2E002: ~scoped_ptr (scoped_ptr.h:312)
==6299== by 0x7C2E002: cc::LayerTreeHo
==6299== by 0x7C2E258: cc::LayerTreeHo
==6299== by 0x7C4A811: operator() (scoped_ptr.h:128)
==6299== by 0x7C4A811: reset (scoped_ptr.h:248)
==6299== by 0x7C4A811: reset (scoped_ptr.h:377)
==6299== by 0x7C4A811: operator= (scoped_ptr.h:371)
==6299== by 0x7C4A811: cc::ThreadProxy
==6299== by 0x72FFA88: Run (callback.h:396)
==6299== by 0x72FFA88: base::debug:
==6299== by 0x7321583: base::MessageLo
==6299== by 0x7321860: base::MessageLo
==6299== by 0x7321D5A: base::MessageLo
==6299== by 0x73223B8: base::MessagePu
==6299== by 0x73347D7: base::RunLoop:
==6299== by 0x731E594: base::MessageLo
==6299== by 0x734E4E4: Run (thread.cc:185)
==6299== by 0x734E4E4: base::Thread:
==6299== by 0x734ACFE: base::(anonymous namespace)
==6299== by 0xBC400A4: start_thread (pthread_
==6299== by 0xB96DCFC: clone (clone.S:111)
==6299== Address 0x24da88a0 is 400 bytes inside a block of size 480 free'd
==6299== at 0x4C2C2E0: operator delete(void*) (in /usr/lib/
==6299== by 0x72B13E0: deallocate (new_allocator.
==6299== by 0x72B13E0: _M_deallocate_node (stl_deque.h:544)
==6299== by 0x72B13E0: _M_pop_front_aux (deque.tcc:528)
==6299== by 0x72B13E0: pop_front (stl_deque.h:1438)
==6299== by 0x72B13E0: pop (stl_queue.h:244)
==6299== by 0x72B13E0: oxide::
==6299== by 0x72B181F: DiscardBackbuffer (stl_construct.
==6299== by 0x72B181F: oxide::
==6299== by 0x72B1838: oxide::
==6299== by 0x7C2E002: operator() (scoped_ptr.h:128)
==6299== by 0x7C2E002: ~scoped_ptr_impl (scoped_ptr.h:222)
==6299== by 0x7C2E002: ~scoped_ptr (scoped_ptr.h:312)
==6299== by 0x7C2E002: cc::LayerTreeHo
==6299== by 0x7C2E258: cc::LayerTreeHo
==6299== by 0x7C4A811: operator() (scoped_ptr.h:128)
==6299== by 0x7C4A811: reset (scoped_ptr.h:248)
==6299== by 0x7C4A811: reset (scoped_ptr.h:377)
==6299== by 0x7C4A811: operator= (scoped_ptr.h:371)
==6299== by 0x7C4A811: cc::ThreadProxy
==6299== by 0x72FFA88: Run (callback.h:396)
==6299== by 0x72FFA88: base::debug:
==6299== by 0x7321583: base::MessageLo
==6299== by 0x7321860: base::MessageLo
==6299== by 0x7321D5A: base::MessageLo
==6299== by 0x73223B8: base::MessagePu
==6299== by 0x73347D7: base::RunLoop:
==6299== by 0x731E594: base::MessageLo
==6299== by 0x734E4E4: Run (thread.cc:185)
==6299== by 0x734E4E4: base::Thread:
==6299== by 0x734ACFE: base::(anonymous namespace)
==6299== by 0xBC400A4: start_thread (pthread_
==6299== by 0xB96DCFC: clone (clone.S:111)
This looks like fallout from http://
Changed in oxide: | |
importance: | Undecided → High |
status: | New → Triaged |
assignee: | nobody → Chris Coulson (chrisccoulson) |
milestone: | none → branch-1.7 |
status: | Triaged → In Progress |
Changed in oxide: | |
status: | In Progress → Fix Released |
information type: | Public → Public Security |
This actually isn't a regression - it looks like it's always been there