]> git.deb.at Git - pkg/abook.git/blobdiff - edit.c
Applied patch from Guillem Jover to add support for bsd calendar export.
[pkg/abook.git] / edit.c
diff --git a/edit.c b/edit.c
index ef956ef80c364ae4813842ec49335422f8cc3093..28d508748480d3747048f83a1291cba203860fc8 100644 (file)
--- a/edit.c
+++ b/edit.c
@@ -33,8 +33,6 @@ extern int views_count;
 
 WINDOW *editw;
 
-static int parse_date_string(char *s, int *day, int *month, int *year);
-
 
 static void
 editor_tab(const int tab)
@@ -289,7 +287,7 @@ editor_print_data(int tab, int item)
  *  valid string
  */
 static int
-change_field(char *msg, char **field, int max_len)
+change_field(char *msg, char **field, size_t max_len)
 {
        char *old;
        int ret = 0;
@@ -314,7 +312,7 @@ change_field(char *msg, char **field, int max_len)
 }
 
 static int
-change_name_field(char *msg, char **field, int max_len)
+change_name_field(char *msg, char **field, size_t max_len)
 {
        char *tmp;
        int ret;
@@ -421,7 +419,7 @@ static int is_valid_date(const int day, const int month, const int year)
        return valid;
 }
 
-static int
+int
 parse_date_string(char *s, int *day, int *month, int *year)
 {
        int i = 0;
@@ -459,17 +457,6 @@ parse_date_string(char *s, int *day, int *month, int *year)
        return is_valid_date(*day, *month, *year);
 }
 
-static int
-is_number(char *s)
-{
-       char *p;
-
-       for(p = s; *p; p++)
-               if(!isdigit(*p))
-                       return FALSE;
-       return TRUE;
-}
-
 static void
 edit_date(int item, int nb)
 {
@@ -500,8 +487,12 @@ edit_date(int item, int nb)
 
        /* ISO 8601 date, of the YYYY-MM-DD or --MM-DD format */
        if(is_valid_date(date[0], date[1], date[2])) {
-               s = strdup_printf(date[2] ? "%04d-%02d-%02d" : "%c-%02d-%02d",
-                       date[2] ? date[2] : '-', date[1], date[0]);
+               if(date[2])
+                       s = strdup_printf("%04d-%02d-%02d",
+                               date[2], date[1], date[0]);
+               else
+                       s = strdup_printf("--%02d-%02d", date[1], date[0]);
+
                db_fput_byid(item, nb, xstrdup(s));
        } else
                statusline_msg(_("Invalid date"));