Source Activity

Syndicate content
Haiku's main repository
Updated: 1 hour 32 min ago

BView: Move tooltip release and fix small coding style issues.

Tue, 2015-04-14 22:26
This is only an optical change. This is only an optical change.
Categories: Development

BView: Fix destruction order of layout items.

Tue, 2015-04-14 21:54
Because of the virtual hooks a BLayout must never be destroyed while it still has layout items. If these items are only removed from the layout in its destructor, the subclass version of hooks like ItemRemoved() are not called anymore. This lead to leaks because many BLayout subclasses use the ItemRemoved() hook to clean up associated data (as is suggested explicitly in the BLayout documentation). In the same line of thought, a BLayoutItem must never be deleted when it is still attached to a layout, as it similarly has virtual hooks like DetachedFromLayout() that can not be called at this point anymore. The destructors of BLayout and BLayoutItem now have debugger calls in case these conditions are not met which should help to avoid accidentally introducing such hard to debug issues. To ensure the correct destruction order the sequence is now: * Destroy the child views first. This cleans up their layout items while the layout tree is still intact. * Unset the view layout before removing layout items so it can properly detach from the layout instead of just deleting it. Because of the virtual hooks a BLayout must never be destroyed while it still has layout items. If these items are only removed from the layout in its destructor, the subclass version of hooks like ItemRemoved() are not called anymore. This lead to leaks because many BLayout subclasses use the ItemRemoved() hook to clean up associated data (as is suggested explicitly in the BLayout documentation). In the same line of thought, a BLayoutItem must never be deleted when it is still attached to a layout, as it similarly has virtual hooks like DetachedFromLayout() that can not be called at this point anymore. The destructors of BLayout and BLayoutItem now have debugger calls in case these conditions are not met which should help to avoid accidentally introducing such hard to debug issues. To ensure the correct destruction order the sequence is now: * Destroy the child views first. This cleans up their layout items while the layout tree is still intact. * Unset the view layout before removing layout items so it can properly detach from the layout instead of just deleting it.
Categories: Development

Debugger: Restrict registers via CPU feature detection.

Tue, 2015-04-14 21:44
DebuggerInterface,Architecture{X86,X8664}: - Add hook function for retrieving a feature flag mask for the target CPU, and corresponding implementation in Architecture-specific classes. ArchitectureX86: - Read CPU features on init, and use them to restrict the exposed set of registers such that the MMX and SSE registers will only be visible if the target CPU actually supports the respective instructions. DebuggerInterface,Architecture{X86,X8664}: - Add hook function for retrieving a feature flag mask for the target CPU, and corresponding implementation in Architecture-specific classes. ArchitectureX86: - Read CPU features on init, and use them to restrict the exposed set of registers such that the MMX and SSE registers will only be visible if the target CPU actually supports the respective instructions.
Categories: Development

BBufferGroup: Check for duplicated buffer id

Tue, 2015-04-14 21:29
* This exclude some possible cheating cases. It impose to have only a buffer_id per thread, so instances will not be duplicated if not needed. * This exclude some possible cheating cases. It impose to have only a buffer_id per thread, so instances will not be duplicated if not needed.
Categories: Development

BLayoutItem: Add RemoveSelf() convenience method.

Tue, 2015-04-14 21:28
It works analoguous to BView::RemoveSelf(), i.e. it removes itself from the parent (layout in this case) and returns whether or not it had and was successfully removed from said parent. It works analoguous to BView::RemoveSelf(), i.e. it removes itself from the parent (layout in this case) and returns whether or not it had and was successfully removed from said parent.
Categories: Development

BView: Remove old TODO comment.

Tue, 2015-04-14 20:45
The BShelf is not owned by the BView (nor the BWindow for that matter) and so must not be deleted on destruction. The BShelf is not owned by the BView (nor the BWindow for that matter) and so must not be deleted on destruction.
Categories: Development

BGridLayout: Fix leak of grid.

Tue, 2015-04-14 20:36
Categories: Development

Whitespace cleanup only.

Tue, 2015-04-14 20:36
Categories: Development

53c8xx: build fixes.

Tue, 2015-04-14 20:17
Categories: Development

BufferConsumer: rework SetOutputBuffersFor

Tue, 2015-04-14 17:25
* Use MemoryDeleter. * Avoid use of dynamic allocation. * Use MemoryDeleter. * Avoid use of dynamic allocation.
Categories: Development

Set the corret ID when unregistering the buffer.

Tue, 2015-04-14 05:19
Follow-up fix to hrev49035. Follow-up fix to hrev49035.
Categories: Development

BufferCache: Don't find anonymous buffers

Mon, 2015-04-13 22:51
Categories: Development

ShowImage: Remember save location

Mon, 2015-04-13 20:00
* Fixes #6766. * Fixes #6766.
Categories: Development

cubieboard4: Update SPL bin url to official source

Mon, 2015-04-13 14:15
* Our pull request was accepted * Our pull request was accepted
Categories: Development