# HG changeset patch # User vimboss # Date 1257249983 0 # Node ID e12f574898a9b21e39af38cd57e50ca87ccdea81 # Parent 813a407a63af8773c585b0baae4d22296503ac03 updated for version 7.2-272 diff --git a/src/memline.c b/src/memline.c --- a/src/memline.c +++ b/src/memline.c @@ -864,21 +864,24 @@ ml_recover() recoverymode = TRUE; called_from_main = (curbuf->b_ml.ml_mfp == NULL); attr = hl_attr(HLF_E); -/* - * If the file name ends in ".sw?" we use it directly. - * Otherwise a search is done to find the swap file(s). - */ + + /* + * If the file name ends in ".s[uvw][a-z]" we assume this is the swap file. + * Otherwise a search is done to find the swap file(s). + */ fname = curbuf->b_fname; if (fname == NULL) /* When there is no file name */ fname = (char_u *)""; len = (int)STRLEN(fname); if (len >= 4 && #if defined(VMS) || defined(RISCOS) - STRNICMP(fname + len - 4, "_sw" , 3) + STRNICMP(fname + len - 4, "_s" , 2) #else - STRNICMP(fname + len - 4, ".sw" , 3) + STRNICMP(fname + len - 4, ".s" , 2) #endif - == 0) + == 0 + && vim_strchr((char_u *)"UVWuvw", fname[len - 2]) != NULL + && ASCII_ISALPHA(fname[len - 1])) { directly = TRUE; fname = vim_strsave(fname); /* make a copy for mf_open() */ diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -677,6 +677,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 272, +/**/ 271, /**/ 270,