temp_char = label_from_token(source, t);
}
printf("}\n\\label{%s}", temp_char);
- free(temp_char);
+
+ if (temp_char)
+ free(temp_char);
}
scratch->padded = 0;
break;
if (scratch->extensions & EXT_CRITIC) {
t->child->type = TEXT_EMPTY;
t->child->mate->type = TEXT_EMPTY;
- print("\\todo{");
+ print("\\cmnote{");
mmd_export_token_tree_latex(out, source, t->child, scratch);
print("}");
} else {
// Batch process 1 or more files
for (int i = 0; i < a_file->count; ++i)
{
+ token_pool_drain();
+
buffer = scan_file(a_file->filename[i]);
if (buffer == NULL) {
transclude_source(buffer, folder, format, NULL, NULL);
- free(folder);
+ //free(folder);
}
result = mmd_process(buffer, extensions, format, language);
}
/// Combine directory and base filename to create a full path */
-char * path_from_dir_base(char * dir, char * base) {
+char * path_from_dir_base(const char * dir, const char * base) {
if (!dir && !base)
return NULL;
/// Recursively transclude source text, given a search directory.
/// Track files to prevent infinite recursive loops
-void transclude_source(DString * source, char * dir, short format, stack * parsed, stack * manifest) {
+void transclude_source(DString * source, const char * dir, short format, stack * parsed, stack * manifest) {
DString * file_path;
DString * buffer;
/// Combine directory and base filename to create a full path */
-char * path_from_dir_base(char * dir, char * base);
+char * path_from_dir_base(const char * dir, const char * base);
/// Recursively transclude source text, given a search directory.
/// Track files to prevent infinite recursive loops
-void transclude_source(DString * source, char * dir, short format, stack * parsed, stack * manifest);
+void transclude_source(DString * source, const char * dir, short format, stack * parsed, stack * manifest);
#endif
\sout{foo}\underline{bar}
-\todo{foo}
+\cmnote{foo}
\hl{bar}