Blob Blame History Raw
From: Anton Khirnov <anton@khirnov.net>
Date: Fri, 16 Nov 2012 18:01:13 +0100
Subject: [PATCH] FvwmPager: be more careful with window labels.

Do not assume they contain properly encoded strings.

diff --git a/modules/FvwmPager/x_pager.c b/modules/FvwmPager/x_pager.c
index 70c1e08c..322ed587 100644
--- a/modules/FvwmPager/x_pager.c
+++ b/modules/FvwmPager/x_pager.c
@@ -2795,6 +2795,11 @@ static void label_window_wrap(PagerWindow *t)
         len   = FlocaleStringNumberOfBytes(FwindowFont, next);
         width = FlocaleTextWidth(FwindowFont, next, len);
 
+        if (end - next < len) {
+          fprintf(stderr, "%s: malformed window label\n", MyName);
+          return;
+        }
+
         if (width > t->pager_view_width - cur_width - 2*label_border && cur != next)
           break;