| To: vim-dev@vim.org |
| Subject: Patch 7.2.178 |
| Fcc: outbox |
| From: Bram Moolenaar <Bram@moolenaar.net> |
| Mime-Version: 1.0 |
| Content-Type: text/plain; charset=UTF-8 |
| Content-Transfer-Encoding: 8bit |
| |
| |
| Patch 7.2.178 |
| Problem: Using negative value for device number might not work. |
| Solution: Use a separate flag for whether ffv_dev was set. |
| Files: src/misc2.c |
| |
| |
| |
| |
| |
| *** 2841,2847 **** |
| get_key_name(i) |
| int i; |
| { |
| ! if (i >= KEY_NAMES_TABLE_LEN) |
| return NULL; |
| return key_names_table[i].name; |
| } |
| --- 2841,2847 ---- |
| get_key_name(i) |
| int i; |
| { |
| ! if (i >= (int)KEY_NAMES_TABLE_LEN) |
| return NULL; |
| return key_names_table[i].name; |
| } |
| |
| *** 3869,3875 **** |
| * use filename. |
| */ |
| #ifdef UNIX |
| ! int ffv_dev; /* device number (-1 if not set) */ |
| ino_t ffv_ino; /* inode number */ |
| #endif |
| /* The memory for this struct is allocated according to the length of |
| --- 3869,3876 ---- |
| * use filename. |
| */ |
| #ifdef UNIX |
| ! int ffv_dev_valid; /* ffv_dev and ffv_ino were set */ |
| ! dev_t ffv_dev; /* device number */ |
| ino_t ffv_ino; /* inode number */ |
| #endif |
| /* The memory for this struct is allocated according to the length of |
| |
| *** 4059,4071 **** |
| * This function silently ignores a few errors, vim_findfile() will have |
| * limited functionality then. |
| */ |
| - /*ARGSUSED*/ |
| void * |
| vim_findfile_init(path, filename, stopdirs, level, free_visited, find_what, |
| search_ctx_arg, tagfile, rel_fname) |
| char_u *path; |
| char_u *filename; |
| ! char_u *stopdirs; |
| int level; |
| int free_visited; |
| int find_what; |
| --- 4060,4071 ---- |
| * This function silently ignores a few errors, vim_findfile() will have |
| * limited functionality then. |
| */ |
| void * |
| vim_findfile_init(path, filename, stopdirs, level, free_visited, find_what, |
| search_ctx_arg, tagfile, rel_fname) |
| char_u *path; |
| char_u *filename; |
| ! char_u *stopdirs UNUSED; |
| int level; |
| int free_visited; |
| int find_what; |
| |
| *** 5063,5072 **** |
| { |
| if ( |
| #ifdef UNIX |
| ! !url |
| ! ? (vp->ffv_dev == st.st_dev |
| ! && vp->ffv_ino == st.st_ino) |
| ! : |
| #endif |
| fnamecmp(vp->ffv_fname, ff_expand_buffer) == 0 |
| ) |
| --- 5063,5071 ---- |
| { |
| if ( |
| #ifdef UNIX |
| ! !url ? (vp->ffv_dev_valid && vp->ffv_dev == st.st_dev |
| ! && vp->ffv_ino == st.st_ino) |
| ! : |
| #endif |
| fnamecmp(vp->ffv_fname, ff_expand_buffer) == 0 |
| ) |
| |
| *** 5091,5104 **** |
| #ifdef UNIX |
| if (!url) |
| { |
| vp->ffv_ino = st.st_ino; |
| vp->ffv_dev = st.st_dev; |
| vp->ffv_fname[0] = NUL; |
| } |
| else |
| { |
| ! vp->ffv_ino = 0; |
| ! vp->ffv_dev = -1; |
| #endif |
| STRCPY(vp->ffv_fname, ff_expand_buffer); |
| #ifdef UNIX |
| --- 5090,5103 ---- |
| #ifdef UNIX |
| if (!url) |
| { |
| + vp->ffv_dev_valid = TRUE; |
| vp->ffv_ino = st.st_ino; |
| vp->ffv_dev = st.st_dev; |
| vp->ffv_fname[0] = NUL; |
| } |
| else |
| { |
| ! vp->ffv_dev_valid = FALSE; |
| #endif |
| STRCPY(vp->ffv_fname, ff_expand_buffer); |
| #ifdef UNIX |
| |
| |
| |
| *** 678,679 **** |
| --- 678,681 ---- |
| { /* Add new patch number below this line */ |
| + /**/ |
| + 178, |
| /**/ |
| |
| -- |
| FATAL ERROR! SYSTEM HALTED! - Press any key to continue doing nothing. |
| |
| /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ |
| /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ |
| \\\ download, build and distribute -- http://www.A-A-P.org /// |
| \\\ help me help AIDS victims -- http://ICCF-Holland.org /// |