Emit a FatalError if any CVS filenames contain control characters.
commit4baa3ae2ad66e0835ed6c97cd762938e18e12477
authormhagger <mhagger@be7e6eca-30d4-0310-a8e5-ac0d63af7087>
Sun, 2 Apr 2006 19:54:14 +0000 (2 19:54 +0000)
committermhagger <mhagger@be7e6eca-30d4-0310-a8e5-ac0d63af7087>
Sun, 2 Apr 2006 19:54:14 +0000 (2 19:54 +0000)
tree1c3124d0383d7220b29d500794100ba532af64ea
parentcd874f1ec209f907f8f4cb02549ea7f1da80a2ef
Emit a FatalError if any CVS filenames contain control characters.

Subversion does not allow control characters in filenames or paths.
And cvs2svn chokes on certain ones.  Previously, cvs2svn sometimes
crashed, sometimes created output that svnadmin cannot handle.  This
change checks filenames for illegal characters during pass1 and emits
a FatalError (with a hopefully understandable error message) if that
occurs.

* cvs2svn (verify_filename_legal): New function.

  (pass1.visit_file): Invoke verify_pathname_legal() on each directory
  and filename to fail if any illegal characters are found.

* run-tests.py (ctrl_char_in_filename): New test.

  (test_list): Added new test.

git-svn-id: http://cvs2svn.tigris.org/svn/cvs2svn/trunk@1816 be7e6eca-30d4-0310-a8e5-ac0d63af7087
cvs2svn
run-tests.py