чување 202dfcf0e49a02d13d50ee79b135ed4178d17885
родитељ 1e9d665fdabdc931ea7c5940448466fbace4c965
Аутор: Страхиња Радић <contact@strahinja.org>
Датум: Sat, 10 Jun 2023 22:00:58 +0200
Debug issue with incdir
Signed-off-by: Страхиња Радић <contact@strahinja.org>
Diffstat:
| M | slw2gmi.c | | | 32 | +++++++++++++++++++------------- |
измењених датотека: 1, додавања: 19(+), брисања: 13(-)
diff --git a/slw2gmi.c b/slw2gmi.c
@@ -1513,11 +1513,6 @@ process_incdir_subdir(FILE* output, const char* subdirname,
while (names_output < names_total)
{
int pstatus = 0;
- char* basename = strip_ext((*pnamelist)->d_name);
- char* link = NULL;
- CALLOC(link, char, BUFSIZE);
-
- snprintf(link, BUFSIZE, "%s/%s", subdirname, basename);
fflush(output);
pid_t pid = fork();
@@ -1526,18 +1521,24 @@ process_incdir_subdir(FILE* output, const char* subdirname,
wait(&pstatus);
else if (pid == 0)
{
- char* filename = NULL;
- set_basedir(&basedir, &basedir_size, abs_subdirname);
- CALLOC(filename, char, BUFSIZE);
- snprintf(filename, BUFSIZE, "%s/%s", abs_subdirname,
- (*pnamelist)->d_name);
-
FILE* input = NULL;
FILE* output = stdout;
u8* buffer = NULL;
size_t buffer_size = 0;
int result = 0;
ULLONG saved_state = ST_NONE;
+ char* filename = NULL;
+ char* basename = strip_ext((*pnamelist)->d_name);
+ char* link = NULL;
+
+ CALLOC(link, char, BUFSIZE);
+ CALLOC(filename, char, BUFSIZE);
+
+ snprintf(link, BUFSIZE, "%s/%s", subdirname, basename);
+
+ set_basedir(&basedir, &basedir_size, abs_subdirname);
+ snprintf(filename, BUFSIZE, "%s/%s", abs_subdirname,
+ (*pnamelist)->d_name);
read_file_into_buffer(&input, &buffer, &buffer_size,
filename, &input_dirname);
@@ -1589,6 +1590,9 @@ process_incdir_subdir(FILE* output, const char* subdirname,
u8* date = get_value(vars, vars_count, (u8*)"date");
u8* title = get_value(vars, vars_count, (u8*)"title");
+ fprintf(stderr, "DBG:title={%s},date={%s}\n",
+ title ? (char*)title : "(NULL)",
+ date ? (char*)date : "(NULL)");
if (title && date)
process_timestamp(output, link_prefix, link,
NULL, date, title);
@@ -1624,8 +1628,6 @@ process_incdir_subdir(FILE* output, const char* subdirname,
else
exit(error(1, (u8*)"Fork failed"));
- free(link);
- free(basename);
pnamelist++;
names_output++;
}
@@ -1762,6 +1764,8 @@ process_timestamp(FILE* output, const u8* link_prefix, const char* link,
day = (u8*)strtok_r(NULL, "T", (char**)&ptr);
if (!day)
goto process_timestamp_cleanup;
+ fprintf(stderr, "DBG:process_timestamp(%s): ymd passed\n",
+ title ? (char*)title : "(NULL)");
ptimestamp_format = timestamp_format;
while (*ptimestamp_format)
{
@@ -1798,6 +1802,8 @@ process_timestamp(FILE* output, const u8* link_prefix, const char* link,
output_firstcol = 1;
process_timestamp_cleanup:
+ fprintf(stderr, "DBG:process_timestamp(%s): cleanup\n",
+ title ? (char*)title : "(NULL)");
free(formatted_date);
free(in_line);
free(in_filename);