Vielleicht kann mir jemand von den Glib/GTK/GNOME Entwicklern weiterhelfen:
Hab folgendes Beispiel unter Verwendung der libgnomevfs:
Code:
int main (int argc, char **argv)
{
const char *output_uri_string = argv[1];
GnomeVFSResult result;
/* remember to initialize GnomeVFS! */
if (!gnome_vfs_init ()) {
printf ("Could not initialize GnomeVFS\n");
return 1;
}
GnomeVFSURI* output_uri = gnome_vfs_uri_new(output_uri_string);
const char* mime_type = gnome_vfs_get_mime_type_from_uri(output_uri);
gnome_vfs_uri_unref(output_uri);
printf("mimeType = '%s'\n", mime_type);
GnomeVFSMimeApplication* default_app =
gnome_vfs_mime_get_default_application(mime_type);
printf("app = '%s'\n", default_app->name);
gnome_vfs_mime_application_free (default_app);
return 0;
}
Ich bin mir da als C++ Programmierer nicht ganz sicher, ob ich alle simulierten Objekte richtig wieder frei gebe, also speziell das uri_unref
Ist das so ausreichend um kein Memory Leak zu bekommen, oder gibt es eine passende Pseudodesktruktorfunktion wie gnome_vfs_mime_application_free für das GnomeVFSMimeApplication Objekt?
Ciao,
_
Lesezeichen