sunyc 发表于 2013-2-5 12:57:18

修复解决了fluffos的一个问题

大家肯定发现了 用fluffos 跑v22pre11的mudlib 上来肯定是不成功的。

主要原因是 v22b 这一支 (包括fluffos) 里有一个对函数权限要求的改变。

简单的说,就是 input_to, call_other, call_out之类 如果传入函数名形式 (不是(: xx :) 形式) 的话一定要求全部至少是protected模式,不能是private.

这个我个人认为是个bug   我从driver入手解决了这个问题,但是 目前我driver代码没有公布的情况下如果各位想试验可以在mudlib globals.h里 #define private protected. 我认为大部分mudlib 99%都不用改动 直接可以泡在fluffos下

北大侠客行MUD,中国最好的MUD

sunyc 发表于 2013-2-5 13:07:25

至于为什么 改成(: :)就可以了呢。。。 是因为 这样写mudos根本不检查是不是private 只要写了他就认为有效.nnd

mfan 发表于 2013-2-5 13:54:56

围观楼上技术帝

sunyc 发表于 2013-2-5 15:27:31

commit 在这里

https://github.com/sunyc/fluffos/commit/6add488ddc1353efe42bd9ea506264af38ba1c97

加了这个之后 会有debug 提示 access denied , 老的Mudlib还是需要把 private 大量改成 protected 即可
页: [1]
查看完整版本: 修复解决了fluffos的一个问题