作者allen501pc.bbs@bbs.sa.ncyu.edu.tw (靜養中..) 看板: itoc
標題Re: [問題]功能-文章編輯時無法加分
時間新綠園 (2007/02/26 Mon 01:41:53)
恕刪
> > ..
> > ..
> > else if (cuser.userlevel && !strcmp(hdr->owner, cuser.userid)) /* 原
> > 作者修
> > 改 */
> > {
> > + hdr->xmode = xmode ^ POST_NOW_EDIT;
> > if (!vedit(fpath, 0)) /* 若非取消則加上修改資訊 */
> 在 post.c 中, 編輯只有這段程式碼
> 在編輯文章的過程中, 是在 edit.c : vedit()
> 也就是這段只是回傳 "編輯是否完成", 而不代表正在編輯的狀態
可是不管怎麼弄,一定會進入vedit(fpath,0),所以我在進入之前的那一刻加入
hdr->xmode = xmode ^ POST_NOW_EDIT;
先鎖住,不管最後有沒有編輯成功,在執行完vedit(fpath,0) 之後馬上解放
> > {
> > if (fp = fopen(fpath, "a"))
> > {
> > ve_banner(fp, 1);
> > fclose(fp);
> > }
> > }
> > + hdr->xmode=xmode;
> 因此, 即使在這邊寫回 hdr, 也只會變成 "此篇文章已經修改過" 的標記
> > }
恕刪
--
╒═╕
║ ║║║ ★愛過方知情重★
╠═╣║║╓═┐╭─╮
║ ║║║╠═╜║ ║ ★醉過方知酒濃★
║ ║║║╰─╯│ │
--
╭─ Origin ─╗ 新綠園 bbs.sa.ncyu.edu.tw ~ κλμ ─┤
├ Author ╡ 220-129-175-6.dynamic.hinet.net