Mercurial > vim
comparison src/if_cscope.c @ 4867:04b8912a9c85 v7.3.1180
updated for version 7.3.1180
Problem: When current directory changes, path from cscope may no longer be
valid. (AS Budden)
Solution: Always store the absolute path. (Christian Brabandt)
author | Bram Moolenaar <bram@vim.org> |
---|---|
date | Wed, 12 Jun 2013 21:25:23 +0200 |
parents | 6a73ac422c67 |
children | d2f9f67924e7 |
comparison
equal
deleted
inserted
replaced
4866:17019850f49f | 4867:04b8912a9c85 |
---|---|
537 int ret; | 537 int ret; |
538 char *fname = NULL; | 538 char *fname = NULL; |
539 char *fname2 = NULL; | 539 char *fname2 = NULL; |
540 char *ppath = NULL; | 540 char *ppath = NULL; |
541 int i; | 541 int i; |
542 #ifdef FEAT_MODIFY_FNAME | |
543 int len; | |
544 int usedlen = 0; | |
545 char_u *fbuf = NULL; | |
546 #endif | |
542 | 547 |
543 /* get the filename (arg1), expand it, and try to stat it */ | 548 /* get the filename (arg1), expand it, and try to stat it */ |
544 if ((fname = (char *)alloc(MAXPATHL + 1)) == NULL) | 549 if ((fname = (char *)alloc(MAXPATHL + 1)) == NULL) |
545 goto add_err; | 550 goto add_err; |
546 | 551 |
547 expand_env((char_u *)arg1, (char_u *)fname, MAXPATHL); | 552 expand_env((char_u *)arg1, (char_u *)fname, MAXPATHL); |
553 #ifdef FEAT_MODIFY_FNAME | |
554 len = (int)STRLEN(fname); | |
555 fbuf = (char_u *)fname; | |
556 (void)modify_fname((char_u *)":p", &usedlen, | |
557 (char_u **)&fname, &fbuf, &len); | |
558 if (fname == NULL) | |
559 goto add_err; | |
560 fname = (char *)vim_strnsave((char_u *)fname, len); | |
561 vim_free(fbuf); | |
562 #endif | |
548 ret = stat(fname, &statbuf); | 563 ret = stat(fname, &statbuf); |
549 if (ret < 0) | 564 if (ret < 0) |
550 { | 565 { |
551 staterr: | 566 staterr: |
552 if (p_csverbose) | 567 if (p_csverbose) |