From fbc660eda40610fb5ba57fae1f68fe4f2617ca8f Mon Sep 17 00:00:00 2001 From: ptt Date: Thu, 8 Apr 2004 02:43:45 +0000 Subject: tool to merge .dir for boards git-svn-id: http://opensvn.csie.org/pttbbs/trunk/pttbbs@1726 63ad8ddf-47c3-0310-b6dd-a9e9d9715204 --- util/merge_dir.c | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) (limited to 'util') diff --git a/util/merge_dir.c b/util/merge_dir.c index 8df9239b..e81a9f7e 100644 --- a/util/merge_dir.c +++ b/util/merge_dir.c @@ -11,15 +11,13 @@ void usage() { fprintf(stderr, "Usage:\n\n" "merge_dir \n"); } -int -dir_cmp(fileheader_t *a, fileheader_t *b) -{ - if(!a->filename[0] || !b->filename[0]) return 0; - return (strcasecmp(a->filename+1, b->filename+1)); -} fileheader_t *fh; +int dir_cmp(fileheader_t *a, fileheader_t *b) +{ + return strncasecmp(a->filename, b->filename, 12); +} int main(int argc, char **argv) { int pn, sn, i; @@ -39,11 +37,14 @@ int main(int argc, char **argv) { fh = (fileheader_t *)malloc( (pn+sn)*sizeof(fileheader_t)); get_records(argv[1], fh, sizeof(fileheader_t), 1, pn); get_records(argv[2], fh+pn, sizeof(fileheader_t), 1, sn); - qsort(fh, pn+sn, sizeof(boardheader_t), dir_cmp); - - for(i=0; i