2008-10-21 Dan Williams <dcbw@redhat.com>
authorDan Williams <dcbw@redhat.com>
Tue, 21 Oct 2008 17:56:46 +0000 (17:56 +0000)
committerDan Williams <dcbw@redhat.com>
Tue, 21 Oct 2008 17:56:46 +0000 (17:56 +0000)
* src/NetworkManagerPolicy.c
- (update_etc_hosts): don't leak errors, and ensure that
g_file_set_contents() gets a valid error placeholder (rh #461933)

git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@4201 4912f4e0-d625-0410-9fb7-b9a5a253dbdc

ChangeLog
src/NetworkManagerPolicy.c

index 9633b98..5c37084 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2008-10-21  Dan Williams  <dcbw@redhat.com>
+
+       * src/NetworkManagerPolicy.c
+               - (update_etc_hosts): don't leak errors, and ensure that
+                       g_file_set_contents() gets a valid error placeholder (rh #461933)
+
 2008-10-21  Dan Williams  <dcbw@redhat.com>
 
        * src/nm-manager.c
index bfa3540..5f09704 100644 (file)
@@ -266,6 +266,8 @@ update_etc_hosts (const char *hostname)
                nm_warning ("%s: couldn't read " SYSCONFDIR "/hosts: (%d) %s",
                            __func__, error ? error->code : 0,
                            (error && error->message) ? error->message : "(unknown)");
+               if (error)
+                       g_error_free (error);
        } else {
                lines = g_strsplit_set (contents, "\n\r", 0);
                g_free (contents);
@@ -312,10 +314,13 @@ update_etc_hosts (const char *hostname)
                g_string_append (new_contents, "127.0.0.1\t" FALLBACK_HOSTNAME "\tlocalhost");
        }
 
+       error = NULL;
        if (!g_file_set_contents (SYSCONFDIR "/hosts", new_contents->str, -1, &error)) {
                nm_warning ("%s: couldn't update " SYSCONFDIR "/hosts: (%d) %s",
                            __func__, error ? error->code : 0,
                            (error && error->message) ? error->message : "(unknown)");
+               if (error)
+                       g_error_free (error);
        } else
                success = TRUE;