From 71e05b1dcf8a2ae47d59af8ab6e976a900ab9dc2 Mon Sep 17 00:00:00 2001
From: Baptiste Jonglez <baptiste@jonglez.org>
Date: Fri, 6 Jan 2012 23:49:51 +0100
Subject: src/apoint.c: Fix a length bug introduced by new duration format

Commit 4ff3bb9d introduced a new format for parsing durations, thus
allowing a larger string to be retrieved from user input.

However, the string used is still declared with the old length,
leading to crashes when compiling with stack-smashing protection
features (the default on Archlinux). Inputting a duration string of
more than 8 characters (such as "+1d11h11m") would crash calcurse with
a *** stack smashing detected *** message.

Using a larger string from the start fixes the bug.

Signed-off-by: Baptiste Jonglez <baptiste@jonglez.org>
Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
---
 src/apoint.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

(limited to 'src')

diff --git a/src/apoint.c b/src/apoint.c
index 9e0d1b9..aa2a516 100644
--- a/src/apoint.c
+++ b/src/apoint.c
@@ -166,7 +166,7 @@ apoint_add (void)
     _("You entered an invalid end time, should be [hh:mm], [+hh:mm] or [+mm]");
   char *enter_str = _("Press [Enter] to continue");
   int Id = 1;
-  char item_time[LTIME] = "";
+  char item_time[LDUR] = "";
   char item_mesg[BUFSIZ] = "";
   long apoint_start;
   unsigned heures, minutes;
-- 
cgit v1.2.3-70-g09d2