Changeset 428


Ignore:
Timestamp:
Sep 8, 2004 5:05:42 PM (15 years ago)
Author:
forrest
Message:

llow ~ in interactive mode

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Test/ClpMain.cpp

    r424 r428  
    19431943                fileName = "-";
    19441944              } else {
    1945                 if (field[0]=='/'||field[0]=='~'||field[0]=='\\')
     1945                if (field[0]=='/'||field[0]=='\\') {
    19461946                  fileName = field;
    1947                 else
     1947                } else if (field[0]=='~') {
     1948                  char * environ = getenv("HOME");
     1949                  if (environ) {
     1950                    std::string home(environ);
     1951                    field=field.erase(0,1);
     1952                    fileName = home+field;
     1953                  } else {
     1954                    fileName=field;
     1955                  }
     1956                } else {
    19481957                  fileName = directory+field;
     1958                }
    19491959                FILE *fp=fopen(fileName.c_str(),"r");
    19501960                if (fp) {
     
    20022012              std::string fileName;
    20032013              bool canOpen=false;
    2004               if (field[0]=='/'||field[0]=='~')
     2014              if (field[0]=='/'||field[0]=='\\') {
    20052015                fileName = field;
    2006               else
     2016              } else if (field[0]=='~') {
     2017                char * environ = getenv("HOME");
     2018                if (environ) {
     2019                  std::string home(environ);
     2020                  field=field.erase(0,1);
     2021                  fileName = home+field;
     2022                } else {
     2023                  fileName=field;
     2024                }
     2025              } else {
    20072026                fileName = directory+field;
     2027              }
    20082028              FILE *fp=fopen(fileName.c_str(),"w");
    20092029              if (fp) {
     
    21282148              std::string fileName;
    21292149              bool canOpen=false;
    2130               if (field[0]=='/'||field[0]=='~')
     2150              if (field[0]=='/'||field[0]=='\\') {
    21312151                fileName = field;
    2132               else
     2152              } else if (field[0]=='~') {
     2153                char * environ = getenv("HOME");
     2154                if (environ) {
     2155                  std::string home(environ);
     2156                  field=field.erase(0,1);
     2157                  fileName = home+field;
     2158                } else {
     2159                  fileName=field;
     2160                }
     2161              } else {
    21332162                fileName = directory+field;
     2163              }
    21342164              FILE *fp=fopen(fileName.c_str(),"wb");
    21352165              if (fp) {
     
    21942224              std::string fileName;
    21952225              bool canOpen=false;
    2196               if (field[0]=='/'||field[0]=='~')
     2226              if (field[0]=='/'||field[0]=='\\') {
    21972227                fileName = field;
    2198               else
     2228              } else if (field[0]=='~') {
     2229                char * environ = getenv("HOME");
     2230                if (environ) {
     2231                  std::string home(environ);
     2232                  field=field.erase(0,1);
     2233                  fileName = home+field;
     2234                } else {
     2235                  fileName=field;
     2236                }
     2237              } else {
    21992238                fileName = directory+field;
     2239              }
    22002240              FILE *fp=fopen(fileName.c_str(),"rb");
    22012241              if (fp) {
     
    22732313              if (name!="EOL") {
    22742314                int length=name.length();
    2275                 if (name[length-1]=='/')
     2315                if (name[length-1]=='/'||name[length-1]=='\\')
    22762316                  directory=name;
    22772317                else
     
    24142454                fp=stderr;
    24152455              } else {
    2416                 if (field[0]=='/'||field[0]=='~')
     2456                if (field[0]=='/'||field[0]=='\\') {
    24172457                  fileName = field;
    2418                 else
     2458                } else if (field[0]=='~') {
     2459                  char * environ = getenv("HOME");
     2460                  if (environ) {
     2461                    std::string home(environ);
     2462                    field=field.erase(0,1);
     2463                    fileName = home+field;
     2464                  } else {
     2465                    fileName=field;
     2466                  }
     2467                } else {
    24192468                  fileName = directory+field;
     2469                }
    24202470                fp=fopen(fileName.c_str(),"w");
    24212471              }
Note: See TracChangeset for help on using the changeset viewer.