回文章列表
作者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       
文章選讀←離開[主題上]主題下(k)上篇(j)下篇S/a搜尋 G串列 TAB精華 ↑↓捲 Pg/Space翻