用下面这个 patch 试一下吧,我手头没有 Solaris 8 SPARC 可以测试。
$ cvs diff -uN -r 3.69.2.1 -r 3.69.2.2 bcache.c
Index: bcache.c
===================================================================
RCS file: /home/cvs/smth_bbs/libBBS/bcache.c,v
retrieving revision 3.69.2.1
retrieving revision 3.69.2.2
diff -u -r3.69.2.1 -r3.69.2.2
--- bcache.c 16 Apr 2004 07:30:45 -0000 3.69.2.1
+++ bcache.c 5 Sep 2004 15:40:46 -0000 3.69.2.2
@@ -27,6 +27,9 @@
{
int boardfd;
void *oldptr = bcache;
+#ifdef BBSMAIN
+ struct boardheader oldbh = *currboard;
+#endif
munmap(bcache, MAXBOARD * sizeof(struct boardheader));
if ((boardfd = open(BOARDS, O_RDWR | O_CREAT, 0644)) == -1) {
bbslog("3system", "Can't open " BOARDS "file %s", strerror(errno));
@@ -37,6 +40,9 @@
else
bcache = (struct boardheader *) mmap(oldptr, MAXBOARD * sizeof(struct boardheader), PROT_READ | PROT_WRITE, MAP_SHARED, boardfd, 0);
close(boardfd);
+#ifdef BBSMAIN
+ currboard = getbcache(oldbh.filename);
+#endif
}
int getlastpost(char *board, int *lastpost, int *total)
{
【 在 buttcher (旷世酷男) 的大作中提到: 】
: [root@bbs-server bin]# uname -a
: SunOS bbs-server 5.8 Generic_117000-03 sun4u sparc SUNW,Sun-Fire-880
: 全新安装的smth 1.2.1,新建帐号后登陆,新建讨论区A,发文章,到这儿都正常,
: ...................
--
FROM 221.219.17.*