chiark / gitweb /
build-sys: drop AM_GNU_GETTEXT as it fights with IT_PROG_INTLTOOL
[elogind.git] / src / tty-ask-password-agent.c
index b620aa6ee3e5dece2d3ef4dd684f959272287f6d..02b959ea591e1137d963ec1d4309e6e026d1f506 100644 (file)
@@ -376,15 +376,17 @@ static int parse_password(const char *filename, char **wall) {
                                 release_terminal();
                         }
 
-                        packet_length = 1+strlen(password)+1;
-                        if (!(packet = new(char, packet_length)))
-                                r = -ENOMEM;
-                        else {
-                                packet[0] = '+';
-                                strcpy(packet+1, password);
-                        }
+                        if (r >= 0) {
+                                packet_length = 1+strlen(password)+1;
+                                if (!(packet = new(char, packet_length)))
+                                        r = -ENOMEM;
+                                else {
+                                        packet[0] = '+';
+                                        strcpy(packet+1, password);
+                                }
 
-                        free(password);
+                                free(password);
+                        }
                 }
 
                 if (r == -ETIME || r == -ENOENT) {