Layout Manager for Nemiver - Weekly Report 10 & 11


Week 10
Two weeks ago I reworked the asm highlighting in nemiver. I split asm
highlighting into 2 definition files: the first one for the mixed
source code and assembly, and the last one for pure assembly files.
I also fixed nemiver since the code written in assembly wasn't
highlighted at all, only the mixed source code and assembly was
While adding the asm highlighting support to nemiver I discovered a
bug in gtksourceview which can make an application go into an infinite
loop while allocating memory. It only needs few seconds to use all the
I spent a little time debugging and fixing the bug, but hasn't sent
the patch yet because I want to review it myself first.

I had also plan to work on the reverse debugging but after a few
minutes of programming I discovered that the reverse debugging only
works on specifics environments. Since my machine is not one of these
environments I decided to do something else instead.
I have also worked on small clean-up and UI enhancement patches.

Week 11
Last week my mentor reviewed many of my patches, so I spent the first
day reworking|pushing my changes to the official repository.
My patch adding the layout manager was OK enough to start porting it
to the gtk+3 branch, and only a few small changes was needed, mainly
in the
But I cannot submit it to review because there is critical asserts
with the gdl-3 dynamic layout:
(nemiver:29009): GLib-GObject-CRITICAL **: g_object_unref: assertion
`G_IS_OBJECT (object)' failed

I spent all the week trying to figure out what is going wrong: I
compiled the gdl library to debug, and discovered the assertion output
message was generated during the desallocation of the GdlDock. It
seems that the children 'GdlDockItem' I removed earlier in the code
was still in an GdlDockMaster's hash table. And when desallocating the
GdlDock (it's the last widget to get desallocated), the GdlDockItem-s
are freed. But since I removed the widgets from the GdlDock, I manage
the unreferencing of these widgets, so when the GdlDockMaster try to
unref them it gets an invalid object.

At the end of the week I was tired of this intense debugging so I
decided to get back to adding new features to nemiver. I have worked
on porting one of my patches to the gtk2 branch and added a contextual
menu on the target terminal. It's now possible to copy, paste, and
clear the terminal (It fix 4 bugs in bugzilla).

This week
For the two last weeks I will be working on small features, and this
week I will be working on adding preferences to nemiver to customize
the background color, text color, palette color, and fonts of the
target terminal.
I will also add the ability to use the gnome-terminal preferences.
And of course I will continue debugging the dynamic layout.

Fabien Parent

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]