Changeset 104 for trunk/bin/Parameter.cc


Ignore:
Timestamp:
Jun 27, 2006, 11:50:14 AM (15 years ago)
Author:
Peter Johansson
Message:

closes #39 checks that target and root exist, default parameter is changed to ., there is no longer a creation of a target directory, program burps if root directory already exists in the target directory.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/bin/Parameter.cc

    r98 r104  
    2828#include <stdexcept>
    2929#include <string>
     30#include <sys/stat.h>
    3031
    3132namespace theplu {
     
    4950        if (++i<argc){
    5051          root_= std::string(argv[i]);
     52          // if last character is '/' remove
     53          if (*root_.rbegin()=='/')
     54            root_.erase(root_.begin()+root_.size()-1);
    5155          ok=true;
    5256        }
     
    5963        if (++i<argc){
    6064          targetdir_= std::string(argv[i]);
     65          // if last character is '/' remove
     66          if (*targetdir_.rbegin()=='/')
     67            targetdir_.erase(targetdir_.begin()+targetdir_.size()-1);
    6168          ok=true;
    6269        }
     
    8289  void Parameter::analyse(void)
    8390  {
    84     // should check that root is a directory
     91    struct stat buf;
     92    // check that root directory exists
     93    if (stat(root_.c_str(),&buf)){
     94      std::cerr << "\nsvnstat: " << root_ << ": No such directory"
     95                << std::endl;
     96      exit(-1);
     97    }
     98    // check that target directory exists
     99    if (stat(targetdir_.c_str(),&buf)){
     100      std::cerr << "\nsvnstat: " << targetdir_ << ": No such directory"
     101                << std::endl;
     102      exit(-1);
     103    }
    85104  }
    86105
     
    91110    revisions_=false;
    92111    root_=".";
    93     targetdir_="svnstat_output";
     112    targetdir_=".";
    94113    verbose_=false;
    95114  }
     
    117136              << "  -rev [--revisions]: Use revision numbers as time scale\n"
    118137              << "                      instead of dates [dates].\n"
    119               << "  -t [--target] arg : output directory [svnstat_output]\n"
     138              << "  -t [--target] arg : output directory [.]\n"
    120139              << "  -v [--verbose] : explain what is being done\n"
    121140              << "  --version      : print version information and exit\n"
Note: See TracChangeset for help on using the changeset viewer.