diff options
Diffstat (limited to 'fs/ext2.c')
| -rw-r--r-- | fs/ext2.c | 8 |
1 files changed, 5 insertions, 3 deletions
@@ -201,7 +201,9 @@ int ext2_inode_content(char *ram,int inode_nr,uint8_t *ramdest,int max) int sum=0; int count=0; - log(FOOLOS_MODULE_NAME,FOOLOS_LOG_INFO,"Loading %d %d bytes",inode.size_high, inode.size_low); + log(FOOLOS_MODULE_NAME,FOOLOS_LOG_INFO,"Loading %d.%d bytes",inode.size_high, inode.size_low); + + if(inode.size_high>0)panic(FOOLOS_MODULE_NAME,"inode with high.size unsupported, i am sorry."); while(pos<inode.size_low) // TODO: use size high! { @@ -266,8 +268,8 @@ int ext2_filename_to_inode_traverse(uint8_t *ram, char *path,int inode_start) log(FOOLOS_MODULE_NAME,FOOLOS_LOG_DEBUG,"looking for %s '%s' in inode: %d",final?"file":"dir",first,inode_start); - fs_dirent dirs[15]; - int count= ext2_read_dir(ram, inode_start,dirs,15); // get dir + fs_dirent dirs[25]; + int count= ext2_read_dir(ram, inode_start,dirs,25); // get dir for(int i=0;i<count;i++) { |
