[mew-dist 25891] Re: Mew 4.1.53
Kazu Yamamoto ( 山本和彦 )
kazu at example.com
2005年 1月 7日 (金) 17:01:55 JST
> new_inbox_file(int seq, char inboxfile[PATH_MAX])
> とするか,明示的に PATH_MAX 相当を使うのかな.
これでいけますか?
ポインターと配列は似て非なるものです。だから、ここの sprintf() は残して
おいたというのに。> momo ちゃん
--かず
Index: incm.c
===================================================================
RCS file: /cvsmew/mew/bin/incm.c,v
retrieving revision 1.26
diff -u -r1.26 incm.c
--- incm.c 7 Jan 2005 04:34:36 -0000 1.26
+++ incm.c 7 Jan 2005 06:56:52 -0000
@@ -499,7 +499,7 @@
snprintf(num, sizeof(num), "%d", ++seq);
if (strlen(InboxDir) + strlen(num) + 2 > PATH_MAX)
error("pathname too long (%s/%s)", InboxDir, num);
- snprintf(inboxfile, sizeof(inboxfile), "%s/%s", InboxDir, num);
+ snprintf(inboxfile, PATH_MAX, "%s/%s", InboxDir, num);
if (access(inboxfile, F_OK) && errno == ENOENT)
break;
} while (TRUE);
@@ -519,7 +519,7 @@
snprintf(num, sizeof(num), "%d", ++*seq);
if (strlen(InboxDir) + strlen(num) + 2 > PATH_MAX)
error("pathname too long (%s/%s)", InboxDir, num);
- snprintf(inboxfile, sizeof(inboxfile), "%s/%s", InboxDir, num);
+ snprintf(inboxfile, PATH_MAX, "%s/%s", InboxDir, num);
if ((fd = open(inboxfile, flag, FileMode)) >= 0 ||
errno != EEXIST)
break;
Mew-dist メーリングリストの案内