I have fixed three memory leaks. Before, leak_analyser.sh found 75 leaks from simply opening and closing Icon-O-Matic. It now reports only 27.
I am now planning to implement a new shape type called “reference images”. This implements ticket #2748. As discussed in the ticket, having a reference image in the background greatly assists in vectorizing it. Reference images are just for reference. They will not be exported to the final HVIF file.
The coding period has started today! In the last blog post related to GSOC, I said “Here are the plans that I currently have. As with all plans, they are subject to change.” They did indeed change since I found a tool to find memory leaks.
Before I was accepted into GSOC, I had been thinking about porting AddressSanitizer to Haiku to find memory leaks. I decided against it. During the community bonding period, I found a file called leak_analyser.
In 2010-2011, mmlr created a new memory allocator: the guarded heap memory allocator. This allocator helps detect various bugs such as writing past the end of allocated memory, reading uninitialized memory, and freeing freed memory. These uses are detailed in “Using malloc_debug to Find Memory Related Bugs”. Later, in 2015, mmlr had a new project: updating the memory allocator to be able to report memory leaks.
To use this feature, start by loading libroot_debug.
In 2006, an contest was held to create an original icon set for Haiku to replace the BeOS R5 icons. With the passage of time, much of the content surrounding the event has rotted away, including images of the proposed icon sets. Luckily, the Internet Archive has backups! The Stipi icon set won, with Honey, zuMi and Mc Clintock trailing close behind.
575 Alba Deborah Dropline Neu Garum Honey Ikonki jdawin Kabuto Klapaucius Mc Clintock Miqlas Ponkan Stippi Tango zuMi Sources: Haiku icon set contest idea
Icon-O-Matic is the editor for HVIF files, the format that Haiku’s icons are in. It’s a relatively simple but impressive aplication. It does have room for improvement, however.
There are three things I am planning to do during GSoC: fix bugs, refactor the code, and improve the UI. There is a list of known bugs that Icon-O-Matic has over on Trac. You can help, too, by reporting bugs in Icon-O-Matic over there.