changeset 1383:d9606bd03144

Small code cleanup
author Mikael Berthe <mikael@lilotux.net>
date Sun, 02 Dec 2007 13:38:44 +0100
parents 1447c5296977
children f762805b3f42
files mcabber/src/jabglue.c mcabber/src/settings.c
diffstat 2 files changed, 28 insertions(+), 27 deletions(-) [+]
line wrap: on
line diff
--- a/mcabber/src/jabglue.c	Sun Dec 02 13:04:57 2007 +0100
+++ b/mcabber/src/jabglue.c	Sun Dec 02 13:38:44 2007 +0100
@@ -96,15 +96,16 @@
 char *compose_jid(const char *username, const char *servername,
                   const char *resource)
 {
-  char *fjid = g_new(char, 3 +
-                     strlen(username) + strlen(servername) + strlen(resource));
-  strcpy(fjid, username);
+  char *fjid;
+
   if (!strchr(fjid, JID_DOMAIN_SEPARATOR)) {
-    strcat(fjid, JID_DOMAIN_SEPARATORSTR);
-    strcat(fjid, servername);
+    fjid = g_strdup_printf("%s%c%s%c%s", username,
+                           JID_DOMAIN_SEPARATOR, servername,
+                           JID_RESOURCE_SEPARATOR, resource);
+  } else {
+    fjid = g_strdup_printf("%s%c%s", username,
+                           JID_RESOURCE_SEPARATOR, resource);
   }
-  strcat(fjid, JID_RESOURCE_SEPARATORSTR);
-  strcat(fjid, resource);
   return fjid;
 }
 
@@ -2463,7 +2464,7 @@
   xmlnode x;
   char *body = NULL;
   char *enc = NULL;
-  char *tmp = NULL;
+  char *chatmsg = NULL;
   time_t timestamp = 0L;
 
   body = xmlnode_get_tag_data(xmldata, "body");
@@ -2499,12 +2500,11 @@
       // The topic is displayed in the chat status line, so refresh now.
       scr_UpdateChatStatus(TRUE);
     } else {                                      // Chat message
-      tmp = g_new(char, (body ? strlen(body) : 0) + strlen(p) + 4);
-      *tmp = '[';
-      strcpy(tmp+1, p);
-      strcat(tmp, "]\n");
-      if (body) strcat(tmp, body);
-      body = tmp;
+      if (body)
+        chatmsg = g_strdup_printf("[%s]\n%s", p, body);
+      else
+        chatmsg = g_strdup_printf("[%s]\n", p);
+      body = chatmsg;
     }
   }
 
@@ -2537,7 +2537,7 @@
     if (x && !strcmp(xmlnode_get_name(x), "x"))
       got_muc_message(from, x);
   }
-  g_free(tmp);
+  g_free(chatmsg);
 }
 
 static void handle_state_events(char *from, xmlnode xmldata)
--- a/mcabber/src/settings.c	Sun Dec 02 13:04:57 2007 +0100
+++ b/mcabber/src/settings.c	Sun Dec 02 13:38:44 2007 +0100
@@ -97,6 +97,7 @@
   if (!filename) {
     // Use default config file locations
     char *home;
+    GString *sfilename;
 
     if (!mainfile) {
       scr_LogPrint(LPRINT_LOGNORM, "No file name provided");
@@ -110,28 +111,28 @@
       err = -1;
       goto cfg_read_file_return;
     }
-    filename = g_new(char, strlen(home)+24);
-    sprintf(filename, "%s/.mcabber/mcabberrc", home);
-    if ((fp = fopen(filename, "r")) == NULL) {
+    sfilename = g_string_new("");
+    g_string_printf(sfilename, "%s/.mcabber/mcabberrc", home);
+    if ((fp = fopen(sfilename->str, "r")) == NULL) {
       // 2nd try...
-      sprintf(filename, "%s/.mcabberrc", home);
-      if ((fp = fopen(filename, "r")) == NULL) {
+      g_string_printf(sfilename, "%s/.mcabberrc", home);
+      if ((fp = fopen(sfilename->str, "r")) == NULL) {
         fprintf(stderr, "Cannot open config file!\n");
-        g_free(filename);
+        g_string_free(sfilename, TRUE);
         err = -1;
         goto cfg_read_file_return;
       }
     }
     // Check configuration file permissions
     // As it could contain sensitive data, we make it user-readable only.
-    checkset_perm(filename, TRUE);
-    scr_LogPrint(LPRINT_LOGNORM, "Reading %s", filename);
+    checkset_perm(sfilename->str, TRUE);
+    scr_LogPrint(LPRINT_LOGNORM, "Reading %s", sfilename->str);
     // Check mcabber dir.  Here we just warn, we don't change the modes.
-    sprintf(filename, "%s/.mcabber/", home);
-    checkset_perm(filename, FALSE);
-    g_free(filename);
-    filename = NULL;
+    g_string_printf(sfilename, "%s/.mcabber/", home);
+    checkset_perm(sfilename->str, FALSE);
+    g_string_free(sfilename, TRUE);
   } else {
+    // filename was specified
     if ((fp = fopen(filename, "r")) == NULL) {
       const char *msg = "Cannot open configuration file";
       if (mainfile)