Logrotate does not work with log files containing special symbols (like space) in filename. See http://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=11606 for example. The easiest wy to fix logrotate is to use URLEcoded format for file names. You can just use two C functions which do same thing as escape and unescape from perl module /usr/lib/perl5/5.00503/CGI.pm. when you save to /var/lib/logrotate.status escape file name by using a function equivalent to CGI::escape and after you read the string from the file use a function equivalent to CGI::unescape. This way you will fix all the problems with file names containing special symbols in logrotate. The mentioned functions escape and unescape are standard and may be found in many reference implementation. I recommend to name them like logrotate_escape and logrotate_unescape to avoid possible clashes with functions from C library.
Also the proposed solution is better than the patch posted in http://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=7999 because it also hanles symbols like \n \r and etc. Mentioned patch seems to fail on log files with \n symbols. Proposed solution is OK with any special symbols.
fixed in logrotate-3.4