Merge josh's strlen fix (thanks!) (bug #2893)
authorMark Spencer <markster@digium.com>
Mon, 3 Jan 2005 01:16:00 +0000 (01:16 +0000)
committerMark Spencer <markster@digium.com>
Mon, 3 Jan 2005 01:16:00 +0000 (01:16 +0000)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@4637 65c4cc65-6c06-0410-ace0-fbb531ad65f3

apps/app_voicemail.c

index c253b3e..92ca126 100755 (executable)
@@ -4461,7 +4461,7 @@ static int vm_authenticate(struct ast_channel *chan, char *mailbox, int mailbox_
                                return -1;
                        }
                }
-               if (prefix) {
+               if (prefix && !ast_strlen_zero(prefix)) {
                        char fullusername[80] = "";
                        strncpy(fullusername, prefix, sizeof(fullusername) - 1);
                        strncat(fullusername, mailbox, sizeof(fullusername) - 1 - strlen(fullusername));
@@ -4476,7 +4476,7 @@ static int vm_authenticate(struct ast_channel *chan, char *mailbox, int mailbox_
                else {
                        if (option_verbose > 2)
                                ast_verbose( VERBOSE_PREFIX_3 "Incorrect password '%s' for user '%s' (context = %s)\n", password, mailbox, context ? context : "<any>");
-                       if (prefix)
+                       if (prefix && !ast_strlen_zero(prefix))
                                strncpy(mailbox, "", mailbox_size -1);
                }
                logretries++;