Re: giomm API review needed



On Tue, 2008-01-15 at 15:55 +0100, Murray Cumming wrote:
> On Wed, 2008-01-09 at 17:58 +0100, Murray Cumming wrote:
> > giomm is now in glibmm. But we need more people to take a look and
> > review the API. We'll have to freeze the API quite soon for GNOME 2.22,
> > though I'm not sure exactly when that will be for glib and glibmm.
> > 
> > I am gradually adding documentation, but I'm only up to
> > Gio::FileEnumerator so far, alphabetically:
> > http://www.gtkmm.org/docs/glibmm-2.4/docs/reference/html/namespaceGio.html
> > 
> > Gio::File is probably a good place to start, though I don't yet have a
> > good idea of the API as a whole:
> > http://www.gtkmm.org/docs/glibmm-2.4/docs/reference/html/classGio_1_1File.html#_details
> 
> There are several TODO comments in the .hg files if someone would like
> to help. It's simple stuff.
> 

I finally got some time to sit down and play around with the giomm stuff
tonight, but unfortunately I haven't gotten very far yet.  I can't even
get a simple example to run.  Has anybody else written any test/sample
programs with giomm? Am I doing something wrong here?

$ cat giomm-test.cc 
#include <giomm.h>

// no overloads exist without a cancellable argument yet, so create a
dummy NULL
// cancellable
Glib::RefPtr<Gio::Cancellable> not_cancellable;

int main (int argc, char** argv)
{
    Gio::init();
    Glib::RefPtr<Gio::File> f = Gio::File::create_for_path
("/home/jonathon/tmp/giomm.cc");
    Glib::RefPtr<Gio::FileInputStream> stream = f->read
(not_cancellable);
    return 0;
}

$ ./giomm-test 
Segmentation fault (core dumped)

gdb says:
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1214220608 (LWP 12799)]
0x08053311 in ?? ()
(gdb) bt
#0  0x08053311 in ?? ()
#1  0xbf8d8758 in ?? ()
#2  0xb7dcd1ea in IA__g_type_create_instance (type=0) at gtype.c:1569
Backtrace stopped: previous frame inner to this frame (corrupt stack?)

-- 
Jonner



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