To: vim-dev@vim.org Subject: Patch 7.2.178 Fcc: outbox From: Bram Moolenaar 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 *** ../vim-7.2.177/src/misc2.c 2009-04-29 11:00:09.000000000 +0200 --- src/misc2.c 2009-05-16 21:05:10.000000000 +0200 *************** *** 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 *** ../vim-7.2.177/src/version.c 2009-05-16 17:29:37.000000000 +0200 --- src/version.c 2009-05-16 21:00:15.000000000 +0200 *************** *** 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 ///