about summary refs log tree commit diff
path: root/Src/prompt.c
diff options
context:
space:
mode:
authorClint Adams <clint@users.sourceforge.net>2004-05-04 04:17:26 +0000
committerClint Adams <clint@users.sourceforge.net>2004-05-04 04:17:26 +0000
commitc98b9dc800171365eee34a3adbf5a741dbef69ca (patch)
tree7ca4f798e51ff57fd54468e2c951dcc6eef3b55e /Src/prompt.c
parent885509c023dadf766f14c6a51d60048c835e1cd7 (diff)
downloadzsh-c98b9dc800171365eee34a3adbf5a741dbef69ca.tar.gz
zsh-c98b9dc800171365eee34a3adbf5a741dbef69ca.tar.xz
zsh-c98b9dc800171365eee34a3adbf5a741dbef69ca.zip
* 19869: Src/prompt.c, Src/utils.c: avoid segfault when
        prompt-expanding '%D{%p}' or '%D{%P}' under locales with null
        strings for am_pm.
Diffstat (limited to 'Src/prompt.c')
-rw-r--r--Src/prompt.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/Src/prompt.c b/Src/prompt.c
index 5e80da172..e0304f298 100644
--- a/Src/prompt.c
+++ b/Src/prompt.c
@@ -528,7 +528,9 @@ putpromptchar(int doprint, int endchar)
 		    tm = localtime(&timet);
 		    for(t0=80; ; t0*=2) {
 			addbufspc(t0);
-			if (ztrftime(bp, t0, tmfmt, tm))
+			if (ztrftime(bp, t0, tmfmt, tm) ||
+			    !strcmp("%P", tmfmt) ||
+			    !strcmp("%p", tmfmt))
 			    break;
 		    }
 		    bp += strlen(bp);