still messy
This commit is contained in:
parent
ecfae506c9
commit
f874fb99a6
@ -5,11 +5,12 @@
|
|||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <assert.h>
|
#include <assert.h>
|
||||||
#include <ctype.h>
|
#include <ctype.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
|
||||||
void parse_event(char event_string[], struct event **head) {
|
void parse_event(char event_string[], struct event **head) {
|
||||||
char *start_date = strstr(event_string, "\r\nDTSTART");
|
char *start_date = strstr(event_string, "\nDTSTART");
|
||||||
char *end_date = strstr(event_string, "\r\nDTEND");
|
char *end_date = strstr(event_string, "\nDTEND");
|
||||||
char *summary = strstr(event_string, "\r\nSUMMARY");
|
char *summary = strstr(event_string, "\nSUMMARY");
|
||||||
|
|
||||||
char *start_date_str = malloc(256);
|
char *start_date_str = malloc(256);
|
||||||
char *end_date_str = malloc(256);
|
char *end_date_str = malloc(256);
|
||||||
@ -23,11 +24,11 @@ void parse_event(char event_string[], struct event **head) {
|
|||||||
assert(end_date != NULL);
|
assert(end_date != NULL);
|
||||||
assert(summary != NULL);
|
assert(summary != NULL);
|
||||||
|
|
||||||
strncpy(start_date_str, start_date, strchr(start_date, '\r') - start_date);
|
strncpy(start_date_str, start_date, strchr(start_date + 1, '\n') - start_date);
|
||||||
|
|
||||||
strncpy(end_date_str, end_date, strchr(end_date, '\r') - end_date);
|
strncpy(end_date_str, end_date, strchr(end_date + 1, '\n') - end_date);
|
||||||
|
|
||||||
strncpy(summary_str, summary, strchr(summary, '\r') - summary);
|
strncpy(summary_str, summary, strchr(summary + 1, '\n') - summary);
|
||||||
|
|
||||||
// parse dates
|
// parse dates
|
||||||
remove_whitespace(start_date_str);
|
remove_whitespace(start_date_str);
|
||||||
@ -51,8 +52,6 @@ void unfolding_string(char* folded_string, char* unfolded_string) {
|
|||||||
if (folded_string[i] == '\r' && folded_string[i+1] == '\n') {
|
if (folded_string[i] == '\r' && folded_string[i+1] == '\n') {
|
||||||
while (isblank(folded_string[i+2])) {
|
while (isblank(folded_string[i+2])) {
|
||||||
i++;
|
i++;
|
||||||
if (! isblank(folded_string[i+2]))
|
|
||||||
folded_string[i+1] = ';';
|
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
unfolded_string[j] = folded_string[i];
|
unfolded_string[j] = folded_string[i];
|
||||||
|
@ -9,7 +9,9 @@ UID:ical-19709628-example-com
|
|||||||
DTSTART;VALUE=DATE:20250622T000000
|
DTSTART;VALUE=DATE:20250622T000000
|
||||||
DTEND;VALUE=DATE:20250711T000000
|
DTEND;VALUE=DATE:20250711T000000
|
||||||
TRANSP:TRANSPARENT
|
TRANSP:TRANSPARENT
|
||||||
SUMMARY:vacation (approved)
|
SUMMARY:vacation
|
||||||
|
(approved)
|
||||||
|
(again)
|
||||||
DESCRIPTION:vacation\n\n
|
DESCRIPTION:vacation\n\n
|
||||||
status: approved\n
|
status: approved\n
|
||||||
workdays: 13,0\n\n
|
workdays: 13,0\n\n
|
||||||
|
Reference in New Issue
Block a user