From a5f679b59e53de33add6acffe78d42fa6f2be980 Mon Sep 17 00:00:00 2001 From: Art Cancro Date: Wed, 14 Oct 2009 21:44:37 +0000 Subject: [PATCH] * Generate diffs old-to-new instead of new-to-old. I think this will be easier to work with because we can just append. Maybe I'll change my mind again. Right now it's just writing them to the log. In a little while I'll start writing them to disk and we'll see how it goes. --- citadel/modules/wiki/serv_wiki.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/citadel/modules/wiki/serv_wiki.c b/citadel/modules/wiki/serv_wiki.c index 78d58a0b8..507a07a7f 100644 --- a/citadel/modules/wiki/serv_wiki.c +++ b/citadel/modules/wiki/serv_wiki.c @@ -102,20 +102,20 @@ int wiki_upload_beforesave(struct CtdlMessage *msg) { CtdlMakeTempFileName(diff_old_filename, sizeof diff_old_filename); CtdlMakeTempFileName(diff_new_filename, sizeof diff_new_filename); - fp = fopen(diff_new_filename, "w"); - rv = fwrite(msg->cm_fields['M'], strlen(msg->cm_fields['M']), 1, fp); - fclose(fp); - fp = fopen(diff_old_filename, "w"); rv = fwrite(old_msg->cm_fields['M'], strlen(old_msg->cm_fields['M']), 1, fp); fclose(fp); - CtdlFreeMessage(old_msg); - snprintf(diff_cmd, sizeof diff_cmd, "diff -u %s %s", diff_new_filename, diff_old_filename); + fp = fopen(diff_new_filename, "w"); + rv = fwrite(msg->cm_fields['M'], strlen(msg->cm_fields['M']), 1, fp); + fclose(fp); + + snprintf(diff_cmd, sizeof diff_cmd, "diff -u %s %s", diff_old_filename, diff_new_filename); fp = popen(diff_cmd, "r"); if (fp != NULL) { while (s = fgets(buf, sizeof buf, fp), (s != NULL)) { + /* FIXME now do something with it */ CtdlLogPrintf(CTDL_DEBUG, "\033[32m%s\033[0m", s); } pclose(fp); -- 2.30.2