Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

发现页面管理模块的一个Bug,求帮忙确认一下 #2

Open
hzyfox opened this issue Jan 4, 2020 · 0 comments
Open

发现页面管理模块的一个Bug,求帮忙确认一下 #2

hzyfox opened this issue Jan 4, 2020 · 0 comments

Comments

@hzyfox
Copy link

hzyfox commented Jan 4, 2020

虽然 页面管理模块已经是实现好的,但是我在看页面管理模块的时候,有一个地方不太理解,我怀疑是一个bug,想看看你的意见。
PF_Manager.cpp 中的 AllocateBlock函数中
if(bf_manager.frame[min].bDirty==true){ offset=(bf_manager.frame[min].page.pageNum)*sizeof(Page); if(_lseek(bf_manager.frame[min].fileDesc,offset,SEEK_SET)==offset-1) return PF_FILEERR; if(_write(bf_manager.frame[min].fileDesc,&(bf_manager.frame[min].page),sizeof(Page))!=sizeof(Page)) return PF_FILEERR; }

我不理解 为什么第一个if语句中 _lseek(bf_manager.frame[min].fileDesc,offset,SEEK_SET)==offset-1 才 return PF_FILEERR。 我觉的 应该是不等于 Offset 就应该 return PF_FILEERR
所以应该写成
if((_lseek(bf_manager.frame[min].fileDesc,offset,SEEK_SET)==offset)-1)
或者
if(_lseek(bf_manager.frame[min].fileDesc,offset,SEEK_SET)!=offset)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant