返回信息流转信站: BYR!news.byr.edu.cn!news.shec6.edu.cn!news.newsmth.net!NEWSMTH
web下删帖 在回收站中看到的title是空的
找了一下问题 貌似在 libBBS/article.c 734行 cancelpost 函数中
sprintf(oldpath, "%-32.32s - %s", fh->title, userid);
相同的fh->title 可是%-32.32s在web和T下分别格式化后得到的结果却不一样
T下是正常的 web下就是一个空字符串 strlen看过了 是0
这里为什么要用%-32.32s呢 我暂时改成了%-32s 能保证web删帖没问题
求解
这是一条镜像帖。来源:北邮人论坛 / bbs-man-dev / #13222同步于 2026/6/11
该镜像源已超过 30 天没有更新,可能在源站已被删除。
BBSMan_Dev机器人发帖
web删帖 回收站中标题为空的问题
tthen.
2026/6/11镜像同步8 回复
订阅后,新回复会通过你的通知中心匿名送达。
8 条回复
转信站: BYR!news.byr.edu.cn!news.shec6.edu.cn!news.newsmth.net!NEWSMTH
linux的版本?
我这边用fedora时,如果用servie httpd start来启动apache就没有问题,如果用httpd的命令直接启动apache就会出现类似web上的bug,还有一个症状是,web封人会时没有期限的。。。
【 在 tthen (大米) 的大作中提到: 】
: web下删帖 在回收站中看到的title是空的
: 找了一下问题 貌似在 libBBS/article.c 734行 cancelpost 函数中
: sprintf(oldpath, "%-32.32s - %s", fh->title, userid);
: ...................
转信站: BYR!news.byr.edu.cn!news.shec6.edu.cn!news.newsmth.net!NEWSMTH
2.6.18-8.el5
有期限的啊 web服务器用的是nginx
我把%-12.12s 这些 换成%-12s 之后 就不存在问题了 也可以自动解封
其实不是没有期限 应该是BBS_HOME/boards/test/denyuser 这个文件 没有写入原因和日期 只写入了用户id 总之还是那个sprintf的问题
【 在 arikado 的大作中提到: 】
: linux的版本?
: 我这边用fedora时,如果用servie httpd start来启动apache就没有问题,如果用/usr/sbin/httpd -k start的命令直接启动apache就会出现类似web上的bug,还有一个症状是,web封人会时没有期限的。。。
: 【 在 tthen (大米) 的大作中提到: 】
: ...................
转信站: BYR!news.byr.edu.cn!news.shec6.edu.cn!news.newsmth.net!NEWSMTH
没期限那个我记得我已经修了,和php版本有关系...
用了一下strnzhcpy限制32的长度
【 在 arikado (Aeolus的耳环) 的大作中提到: 】
: linux的版本?
: 我这边用fedora时,如果用servie httpd start来启动apache就没有问题,如果用/usr/sbin/httpd -k start的命令直接启动apache就会出现类似web上的bug,还有一个症状是,web封人会时没有期限的。。。
转信站: BYR!news.byr.edu.cn!news.newsmth.net!NEWSMTH
嗯 我感觉也是php或者web服务器的问题
strnzhcpy 这个在哪里用?
%-32.32s 和 %-32s 主要区别在哪里呢
【 在 fancyrabbit 的大作中提到: 】
: 没期限那个我记得我已经修了,和php版本有关系...
: 用了一下strnzhcpy限制32的长度
: 【 在 arikado (Aeolus的耳环) 的大作中提到: 】
: ...................
转信站: BYR!news.byr.edu.cn!news.shec6.edu.cn!news.newsmth.net!NEWSMTH
不用32.32s,用strnzhcpy拷贝到一个新的缓冲区
man 3 printf自己看。。。
用"123" 和"12345"试验一下%4s和%4.4s
【 在 tthen (大米) 的大作中提到: 】
: 嗯 我感觉也是php或者web服务器的问题
: strnzhcpy 这个在哪里用?
: %-32.32s 和 %-32s 主要区别在哪里呢
: ...................
转信站: BYR!news.byr.edu.cn!news.shec6.edu.cn!news.newsmth.net!NEWSMTH
发现了 %4.4s 会限制最大长度。。。。
【 在 fancyrabbit 的大作中提到: 】
: 不用32.32s,用strnzhcpy拷贝到一个新的缓冲区
: man 3 printf自己看。。。
: 用"123" 和"12345"试验一下%4s和%4.4s
: ...................
转信站: BYR!news.byr.edu.cn!news.shec6.edu.cn!news.newsmth.net!NEWSMTH
当时奇怪的地方在于apache的启动方式不同就可以开关这个bug-.-
着实囧了一阵-。-
【 在 fancyrabbit (fancy★一摩尔时光) 的大作中提到: 】
: 没期限那个我记得我已经修了,和php版本有关系...
: 用了一下strnzhcpy限制32的长度
转信站: BYR!news.byr.edu.cn!news.shec6.edu.cn!news.newsmth.net!NEWSMTH
环境变量的问题吧。
【 在 arikado (Aeolus的耳环) 的大作中提到: 】
: 当时奇怪的地方在于apache的启动方式不同就可以开关这个bug-.-
: 着实囧了一阵-。-