You can subscribe to this list here.
2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(28) |
Nov
(58) |
Dec
(85) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2002 |
Jan
(125) |
Feb
(222) |
Mar
(274) |
Apr
(51) |
May
(22) |
Jun
(50) |
Jul
(15) |
Aug
(33) |
Sep
(11) |
Oct
(29) |
Nov
(17) |
Dec
(1) |
2003 |
Jan
(100) |
Feb
(21) |
Mar
(7) |
Apr
(45) |
May
|
Jun
(43) |
Jul
(27) |
Aug
(24) |
Sep
|
Oct
|
Nov
|
Dec
|
2004 |
Jan
(1) |
Feb
|
Mar
(13) |
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
(7) |
Sep
|
Oct
|
Nov
|
Dec
(4) |
2005 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
From: Rob H. <for...@us...> - 2002-08-14 01:35:52
|
Update of /cvsroot/sandweb/sandweb/bin In directory usw-pr-cvs1:/tmp/cvs-serv32625/bin Modified Files: sandweb.cgi Log Message: we weren't exiting if a user tried selected delete from the toolbar file cmds when no files were selected, resulting in a weird looking error page ( both pages were printed, so you saw the headers from the "good" result page ) and errors about non-initialized values Index: sandweb.cgi =================================================================== RCS file: /cvsroot/sandweb/sandweb/bin/sandweb.cgi,v retrieving revision 1.313 retrieving revision 1.314 diff -U2 -r1.313 -r1.314 --- sandweb.cgi 13 Aug 2002 21:46:28 -0000 1.313 +++ sandweb.cgi 14 Aug 2002 01:35:48 -0000 1.314 @@ -1721,4 +1721,5 @@ MESSAGE => $message, ); + exit; } |
From: Rob H. <for...@us...> - 2002-08-13 23:19:30
|
Update of /cvsroot/sandweb/sandweb/lib/SandWeb In directory usw-pr-cvs1:/tmp/cvs-serv27526/lib/SandWeb Modified Files: File.pm Log Message: create_file isn't useful without the inline editor. disabling, for now. also, noticed that tool_bar should be alot more modular, it's supposed to be told what buttons it has, I guess that's not implemented yet :) Index: File.pm =================================================================== RCS file: /cvsroot/sandweb/sandweb/lib/SandWeb/File.pm,v retrieving revision 1.59 retrieving revision 1.60 diff -U2 -r1.59 -r1.60 --- File.pm 14 Jul 2002 08:31:37 -0000 1.59 +++ File.pm 13 Aug 2002 23:19:27 -0000 1.60 @@ -328,5 +328,8 @@ my $self = shift; return ( - 'create_file', +# XXX FIXME +# this doesn't make sense, since the inline editor is disabled +# 'create_file', + 'create_folder', 'delete', |
From: Rob H. <for...@us...> - 2002-08-13 23:19:30
|
Update of /cvsroot/sandweb/sandweb/templates In directory usw-pr-cvs1:/tmp/cvs-serv27526/templates Modified Files: tool_bar.html Log Message: create_file isn't useful without the inline editor. disabling, for now. also, noticed that tool_bar should be alot more modular, it's supposed to be told what buttons it has, I guess that's not implemented yet :) Index: tool_bar.html =================================================================== RCS file: /cvsroot/sandweb/sandweb/templates/tool_bar.html,v retrieving revision 1.12 retrieving revision 1.13 diff -U2 -r1.12 -r1.13 --- tool_bar.html 13 Aug 2002 19:02:34 -0000 1.12 +++ tool_bar.html 13 Aug 2002 23:19:28 -0000 1.13 @@ -9,5 +9,4 @@ <tr> <td width="100%" align="center" colspan="3"> - <input type="submit" name="action" value="create_file" accesskey="i" /> <input type="submit" name="action" value="create_folder" accesskey="o" /> <input type="submit" name="action" value="delete" accesskey="d" /> |
From: Rob H. <for...@us...> - 2002-08-13 06:42:41
|
Update of /cvsroot/sandweb/sandweb/bin In directory usw-pr-cvs1:/tmp/cvs-serv16612/bin Modified Files: sandweb.cgi Log Message: disabling inline editor Index: sandweb.cgi =================================================================== RCS file: /cvsroot/sandweb/sandweb/bin/sandweb.cgi,v retrieving revision 1.309 retrieving revision 1.310 diff -U2 -r1.309 -r1.310 --- sandweb.cgi 13 Aug 2002 01:53:34 -0000 1.309 +++ sandweb.cgi 13 Aug 2002 06:42:37 -0000 1.310 @@ -1103,4 +1103,9 @@ } + # XXX FIXME + # the inline editor is disabled + + $edit = 0; + $log->debug("creating Repository object"); my $repository = SandWeb::Repository->new( |
From: Rob H. <for...@us...> - 2002-08-13 03:22:04
|
Update of /cvsroot/sandweb/sandweb/lib/SandWeb In directory usw-pr-cvs1:/tmp/cvs-serv4123/lib/SandWeb Modified Files: UI.pm Log Message: malformed tag prevented "SandWeb" in footer from being a valid link in IE Index: UI.pm =================================================================== RCS file: /cvsroot/sandweb/sandweb/lib/SandWeb/UI.pm,v retrieving revision 1.36 retrieving revision 1.37 diff -U2 -r1.36 -r1.37 --- UI.pm 19 Jun 2002 07:08:59 -0000 1.36 +++ UI.pm 13 Aug 2002 03:22:02 -0000 1.37 @@ -49,5 +49,5 @@ my $log = $self->_logobj(); my $version = $self->_get_version(); - my $footer = '<font size="2"<a href="http://sandweb.sf.net">SandWeb</a> ' . $version . ' - Web Based Sandbox Management Client.</font>'; + my $footer = '<font size="2"><a href="http://sandweb.sf.net">SandWeb</a> ' . $version . ' - Web Based Sandbox Management Client.</font>'; my @debug_msgs = (); |
From: Rob H. <for...@us...> - 2002-08-13 03:03:11
|
Update of /cvsroot/sandweb/sandweb/templates In directory usw-pr-cvs1:/tmp/cvs-serv32228/templates Modified Files: current_location.html Log Message: cool, made the current_location bar look ok in IE. It was nested pretty deep into it's own table, and the tags weren't nested correctly. I took it out of it's own table, because I don't think there is any point to it right now ( the appearance is identical without the table, it seemed to be nesting the tags properly that "fixed" it ). Index: current_location.html =================================================================== RCS file: /cvsroot/sandweb/sandweb/templates/current_location.html,v retrieving revision 1.6 retrieving revision 1.7 diff -U2 -r1.6 -r1.7 --- current_location.html 22 Mar 2002 04:14:51 -0000 1.6 +++ current_location.html 13 Aug 2002 03:03:08 -0000 1.7 @@ -2,11 +2,6 @@ <tr> <td align="left" valign="center" bgcolor="#CCDDCC"> - <table border="0"> - <tr> -   Current location: - <TMPL_LOOP NAME=LOCATION_LOOP><a href="<TMPL_VAR NAME=PROGNAME>?action=browse_module&module_name=<TMPL_VAR NAME=MODULE_NAME>&repo_name=<TMPL_VAR NAME=REPO_NAME>&location=<TMPL_VAR NAME=LOCATION_FULL>"><TMPL_VAR NAME=LOCATION_LINK></a></TMPL_LOOP> - </td> - </tr> - </table> +   Current location: + <TMPL_LOOP NAME=LOCATION_LOOP><a href="<TMPL_VAR NAME=PROGNAME>?action=browse_module&module_name=<TMPL_VAR NAME=MODULE_NAME>&repo_name=<TMPL_VAR NAME=REPO_NAME>&location=<TMPL_VAR NAME=LOCATION_FULL>"><TMPL_VAR NAME=LOCATION_LINK></a></TMPL_LOOP> </td> </tr> |
From: Rob H. <for...@us...> - 2002-08-13 01:53:38
|
Update of /cvsroot/sandweb/sandweb/bin In directory usw-pr-cvs1:/tmp/cvs-serv15788/bin Modified Files: sandweb.cgi Log Message: tag/branch_menu weren't passing along the location of the file.. only noticed this because I went a couple levels deep and tried to force a file to the trunk ( I use branch for this alot, not sure how intuitive that is ). Index: sandweb.cgi =================================================================== RCS file: /cvsroot/sandweb/sandweb/bin/sandweb.cgi,v retrieving revision 1.308 retrieving revision 1.309 diff -U2 -r1.308 -r1.309 --- sandweb.cgi 12 Aug 2002 05:17:01 -0000 1.308 +++ sandweb.cgi 13 Aug 2002 01:53:34 -0000 1.309 @@ -1501,4 +1501,5 @@ my $module_name = $args{'module_name'}; my $repo_name = $args{'repo_name'}; + my $location = $args{'locataion'}; my $main_window_url = "$ENV{'HTTP_REFERER'}"; @@ -1516,4 +1517,5 @@ FILENAME => $filename, PROGNAME => $progname, + LOCATION => $location, MODULE_NAME => $module_name, REPO_NAME => $repo_name, @@ -1550,4 +1552,5 @@ my $module_name = $args{'module_name'}; my $repo_name = $args{'repo_name'}; + my $location = $args{'location'}; my $main_window_url = "$ENV{'HTTP_REFERER'}"; @@ -1564,4 +1567,5 @@ MENU => 'branch', FILENAME => $filename, + LOCATION => $location, PROGNAME => $progname, MODULE_NAME => $module_name, |
From: Rob H. <for...@us...> - 2002-08-12 05:17:06
|
Update of /cvsroot/sandweb/sandweb/bin In directory usw-pr-cvs1:/tmp/cvs-serv5504/bin Modified Files: sandweb.cgi Log Message: correcting comments/debug output to say "file(s)" not "file" Index: sandweb.cgi =================================================================== RCS file: /cvsroot/sandweb/sandweb/bin/sandweb.cgi,v retrieving revision 1.307 retrieving revision 1.308 diff -U2 -r1.307 -r1.308 --- sandweb.cgi 13 Jul 2002 07:02:53 -0000 1.307 +++ sandweb.cgi 12 Aug 2002 05:17:01 -0000 1.308 @@ -344,4 +344,5 @@ # called file deleter my @filename = $cgi->param('filename') || ''; + delete_commit( ck_auth => $ck_auth, @@ -1641,5 +1642,5 @@ ############################################################################### -# delete_commit is called by delete_menu to delete one or more files +# delete_commit is called to delete one or more files # # A File object is created and used. @@ -1737,5 +1738,5 @@ FILENAME => "@filename", PROGNAME => $progname, - OUTPUT => "Deleting file : @filename", + OUTPUT => "Deleting file(s) : @filename", ERROR => "$error", ); |
From: Rob H. <for...@us...> - 2002-07-31 19:46:35
|
Update of /cvsroot/sandweb/sandweb/lib/SandWeb/File In directory usw-pr-cvs1:/tmp/cvs-serv11032/lib/SandWeb/File Modified Files: Unix.pm Log Message: fixed bug in _do_write that was preventing edit/upload from working Index: Unix.pm =================================================================== RCS file: /cvsroot/sandweb/sandweb/lib/SandWeb/File/Unix.pm,v retrieving revision 1.3 retrieving revision 1.4 diff -U2 -r1.3 -r1.4 --- Unix.pm 29 Jul 2002 17:46:17 -0000 1.3 +++ Unix.pm 31 Jul 2002 19:46:30 -0000 1.4 @@ -358,5 +358,5 @@ my $filehandle = _shell( method => 'pipe', - command => "dd of=\"$location/$filename 1>/dev/null 2>/dev/null\"", + command => "dd of=\"$location/$filename\"", ); |
From: Rob H. <for...@us...> - 2002-07-29 17:46:20
|
Update of /cvsroot/sandweb/sandweb/lib/SandWeb/File In directory usw-pr-cvs1:/tmp/cvs-serv20989/lib/SandWeb/File Modified Files: Unix.pm Log Message: all locations/filenames should be quoted before being passed to the shell so that we don't encounter problems with spaces in filenames or directories. Index: Unix.pm =================================================================== RCS file: /cvsroot/sandweb/sandweb/lib/SandWeb/File/Unix.pm,v retrieving revision 1.2 retrieving revision 1.3 diff -U2 -r1.2 -r1.3 --- Unix.pm 21 Jul 2002 19:54:33 -0000 1.2 +++ Unix.pm 29 Jul 2002 17:46:17 -0000 1.3 @@ -44,5 +44,5 @@ my $raw_file_info = _shell( method => 'execute', - command => "ls -lad $location/$filename", + command => "ls -lad \"$location/$filename\"", ); @@ -104,5 +104,5 @@ my $file_scan = _shell( method => 'execute', - command => "file $location/$filename", + command => "file \"$location/$filename\"", ); @@ -197,5 +197,5 @@ my $create_file = _shell( method => 'execute', - command => "touch $location/$filename", + command => "touch \"$location/$filename\"", ); @@ -213,5 +213,5 @@ my $create_folder = _shell( method => 'execute', - command => "mkdir $location/$filename", + command => "mkdir \"$location/$filename\"", ); @@ -230,5 +230,5 @@ my $result = _shell( method => 'execute', - command => "rm $location/$filename", + command => "rm \"$location/$filename\"", log_obj => $log, ); @@ -255,5 +255,5 @@ my $result = _shell( method => 'execute', - command => "rm -rf $location/$filename", + command => "rm -rf \"$location/$filename\"", log_obj => $log, ); @@ -302,5 +302,5 @@ my $file_scan = _shell( method => 'execute', - command => "mv $location/$filename $location/$tofile", + command => "mv \"$location/$filename\" \"$location/$tofile\"", ); @@ -358,8 +358,7 @@ my $filehandle = _shell( method => 'pipe', - command => "dd of=$location/$filename 1>/dev/null 2>/dev/null", + command => "dd of=\"$location/$filename 1>/dev/null 2>/dev/null\"", ); - #open (FILEHANDLE,"|`dd of=$location/$filename 1>/dev/null 2>/dev/null`"); print $filehandle $contents; close $filehandle; @@ -376,5 +375,5 @@ my $file_contents = _shell( method => 'execute', - command => "cat $location/$filename", + command => "cat \"$location/$filename\"", ); |
From: Rob H. <for...@us...> - 2002-07-29 17:41:47
|
Update of /cvsroot/sandweb/sandweb/lib/SandWeb In directory usw-pr-cvs1:/tmp/cvs-serv19096/lib/SandWeb Modified Files: Browse.pm Log Message: checks for unsafe HTTP characters in filenames - rf. RFC 2068 http://www.w3c.org/Protocols/rfc2068/rfc2068 This means that you can view and manipulate .# files.. yay :) Index: Browse.pm =================================================================== RCS file: /cvsroot/sandweb/sandweb/lib/SandWeb/Browse.pm,v retrieving revision 1.77 retrieving revision 1.78 diff -U2 -r1.77 -r1.78 --- Browse.pm 19 Jun 2002 07:08:59 -0000 1.77 +++ Browse.pm 29 Jul 2002 17:41:41 -0000 1.78 @@ -121,4 +121,13 @@ ); my $filename = $file->get_filename(); + + # sanitize filename for HTTP + #Unsafe Characters; RFC 2068 + $filename =~ s/%/%25/g; + $filename =~ s/"/%22/g; + $filename =~ s/#/%23/g; + $filename =~ s/</%3C/g; + $filename =~ s/>/%3E/g; + $row_data{FILESIZE} = $file->get_size(); $row_data{FILEAGE} = $file->get_age(); |
From: Rob H. <for...@us...> - 2002-07-27 01:48:02
|
Update of /cvsroot/sandweb/sandweb/lib In directory usw-pr-cvs1:/tmp/cvs-serv20286/lib Modified Files: SandWeb.pm Log Message: next version is going to be BETA, updating version number Index: SandWeb.pm =================================================================== RCS file: /cvsroot/sandweb/sandweb/lib/SandWeb.pm,v retrieving revision 1.19 retrieving revision 1.20 diff -U2 -r1.19 -r1.20 --- SandWeb.pm 19 Jun 2002 07:09:00 -0000 1.19 +++ SandWeb.pm 27 Jul 2002 01:47:58 -0000 1.20 @@ -32,5 +32,5 @@ use SandWeb::Auth; -$VERSION = 'ALPHA'; +$VERSION = 'BETA'; sub get_version { return $VERSION; |
From: Rob H. <for...@us...> - 2002-07-21 19:54:39
|
Update of /cvsroot/sandweb/sandweb/lib/SandWeb/File In directory usw-pr-cvs1:/tmp/cvs-serv24112/lib/SandWeb/File Modified Files: Unix.pm Log Message: fixed a silly download bug ( should've been using the private "_do_file_read" method, and was forgetting to pass location/filename ) Index: Unix.pm =================================================================== RCS file: /cvsroot/sandweb/sandweb/lib/SandWeb/File/Unix.pm,v retrieving revision 1.1 retrieving revision 1.2 diff -U2 -r1.1 -r1.2 --- Unix.pm 14 Jul 2002 08:31:37 -0000 1.1 +++ Unix.pm 21 Jul 2002 19:54:33 -0000 1.2 @@ -175,5 +175,8 @@ print "content-type: $mime_type\n\n"; - my $file_contents = file_read(); + my $file_contents = _do_file_read( + 'location' => "$location", + 'filename' => "$filename", + ); print "$file_contents"; @@ -232,5 +235,9 @@ $log->debug("error code : $result"); - return $result; + if ($result) { + return 0; + } else { + return 1; + } } |
From: Rob H. <for...@us...> - 2002-07-21 19:53:48
|
Update of /cvsroot/sandweb/sandweb/templates In directory usw-pr-cvs1:/tmp/cvs-serv24014/templates Modified Files: output.html vcs_output.html Log Message: changed "filename" to "filaname(s)", as there may be more than one Index: output.html =================================================================== RCS file: /cvsroot/sandweb/sandweb/templates/output.html,v retrieving revision 1.2 retrieving revision 1.3 diff -U2 -r1.2 -r1.3 --- output.html 22 Mar 2002 04:14:51 -0000 1.2 +++ output.html 21 Jul 2002 19:53:44 -0000 1.3 @@ -2,5 +2,5 @@ <tr> <td width="100%"> - Current filename : <TMPL_VAR NAME=FILENAME> + Current filename(s) : <TMPL_VAR NAME=FILENAME> <br /> <form> Index: vcs_output.html =================================================================== RCS file: /cvsroot/sandweb/sandweb/templates/vcs_output.html,v retrieving revision 1.18 retrieving revision 1.19 diff -U2 -r1.18 -r1.19 --- vcs_output.html 22 Mar 2002 04:14:51 -0000 1.18 +++ vcs_output.html 21 Jul 2002 19:53:44 -0000 1.19 @@ -2,5 +2,5 @@ <tr> <td width="100%"> - Current filename : <TMPL_VAR NAME=FILENAME> + Current filename(s) : <TMPL_VAR NAME=FILENAME> <br /> <form> |
From: Rob H. <for...@us...> - 2002-07-21 06:21:24
|
Update of /cvsroot/sandweb/sandweb In directory usw-pr-cvs1:/tmp/cvs-serv9899 Modified Files: MANIFEST Log Message: added File::Unix to manifest Index: MANIFEST =================================================================== RCS file: /cvsroot/sandweb/sandweb/MANIFEST,v retrieving revision 1.12 retrieving revision 1.13 diff -U2 -r1.12 -r1.13 --- MANIFEST 13 Jun 2002 20:21:06 -0000 1.12 +++ MANIFEST 21 Jul 2002 06:21:18 -0000 1.13 @@ -18,4 +18,5 @@ lib/SandWeb/ErrHndlr.pm lib/SandWeb/File.pm +lib/SandWeb/File/Unix.pm lib/SandWeb/Log.pm lib/SandWeb/UI.pm |
From: Rob H. <for...@us...> - 2002-07-14 08:31:41
|
Update of /cvsroot/sandweb/sandweb/lib/SandWeb/File In directory usw-pr-cvs1:/tmp/cvs-serv6833/lib/SandWeb/File Added Files: Unix.pm Log Message: all file ops now use a module. currently, the only supported module is File/Unix.pm --- NEW FILE --- #lib/SandWeb/File/Unix.pm # # This class handles all file viewing and operations on Unix systems. # It is only intended to be called by the File class. # # SandWeb (Web-based VCS client) # # Copyright (C) 2002 Nick Jennings # Copyright (C) 2002 Robert Helmer # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # package SandWeb::File::Unix; use SandWeb::Shell; sub new { my $class = shift; my %args = @_; my $filename = $args{'filename'}; # Security check, no "/.." or "../" allowed mister! if ($filename) { $filename =~ s:/\.\.::g; $filename =~ s:\.\./::g; } my $log_obj = $args{'log_obj'}; my $location = $args{'location'}; my $raw_file_info = _shell( method => 'execute', command => "ls -lad $location/$filename", ); my @file_info = split(' ', $raw_file_info); my $perms = $file_info[0]; my $inodes = $file_info[1]; my $owner = $file_info[2]; my $group = $file_info[3]; my $size = $file_info[4]; my $month = $file_info[5]; my $day = $file_info[6]; my $time = $file_info[7]; my $self = bless { 'filename' => $filename, 'location' => $location, 'log_obj' => $log_obj, 'perms' => $perms, 'owner' => $owner, 'group' => $group, 'size' => $size, 'age' => "$month $day $time", }, $class; return $self; } sub get_owner { my $self = shift; return $self->{'owner'}; } sub get_group { my $self = shift; return $self->{'group'}; } sub get_filename { my $self = shift; return $self->{'filename'}; } sub get_location { my $self = shift; return $self->{'filename'}; } sub get_permissions { my $self = shift; return $self->{'perms'}; } sub get_file_type { my $self = shift; my $location = $self->{'location'}; my $filename = $self->{'filename'}; my $file_scan = _shell( method => 'execute', command => "file $location/$filename", ); if ($file_scan =~ /directory/) { $file_type = 'Directory'; } elsif ($file_scan =~ /text/) { $file_type = 'Text'; } elsif ($file_scan =~ /empty/) { $file_type = 'Text'; } elsif (($file_scan =~ /data/) || ($file_scan =~ /executable/)) { $file_type = 'Binary'; } else { $file_type = 'Unknown'; } return $file_type; } sub get_size { my $self = shift; return $self->{'size'}; } sub get_age { my $self = shift; return $self->{'age'}; } sub upload { my $self = shift; my %args = @_; my $location = $self->{'location'}; my $filename = $self->{'filename'}; my $log = $self->{'log_obj'}; # passed from CGI->upload - FileHandle of incoming file. my $filehandle = $args{'filehandle'}; # begin workaround for IE/Windows upload behaviour while ( $filename =~ /\\/ ) { $filename = $'; } # end workaround for IE/Windows upload behaviour my @file = <$filehandle>; chomp @file; my $contents = join("\n", @file); _do_file_write( 'location' => $location, 'filename' => $filename, 'contents' => "$contents", 'log_obj' => $log, ); } sub download { my $self = shift; my %args = @_; my $location = $self->{'location'}; my $filename = $self->{'filename'}; my $log = $self->{'log_obj'}; my $mime_type = $args{'mime_type'}; print "content-type: $mime_type\n\n"; my $file_contents = file_read(); print "$file_contents"; close FILE; } sub create_file { my $self = shift; my %args = @_; my $location = $self->{'location'}; my $filename = $self->{'filename'}; my $contents = $args{'contents'}; my $log = $self->{'log_obj'}; $log->debug("creating file : $location/$filename"); my $create_file = _shell( method => 'execute', command => "touch $location/$filename", ); return $return; } sub create_folder { my $self = shift; my $location = $self->{'location'}; my $filename = $self->{'filename'}; my $log = $self->{'log_obj'}; $log->debug("creating folder : $location/$filename"); my $create_folder = _shell( method => 'execute', command => "mkdir $location/$filename", ); return 1; } sub delete { my $self = shift; my $location = $self->{'location'}; my $filename = $self->{'filename'}; my $log = $self->{'log_obj'}; my $return; $log->debug("removing file : $location/$filename"); my $result = _shell( method => 'execute', command => "rm $location/$filename", log_obj => $log, ); $log->debug("error code : $result"); return $result; } sub delete_folder { my $self = shift; my %args = @_; my $location = $self->{'location'}; my $filename = $self->{'filename'}; my $log = $self->{'log_obj'}; my $recurse = $args{'recurse'}; my $return; $log->debug("removing folder : $location/$filename"); my $result = _shell( method => 'execute', command => "rm -rf $location/$filename", log_obj => $log, ); $log->debug("error code : $result"); return 1; } sub copy { my $self = shift; my %args = @_; my $location = $self->{'location'}; my $filename = $self->{'filename'}; my $log = $self->{'log_obj'}; my $tofile = $args{'tofile'}; $log->debug("copying file : $location/$filename to $tofile"); my $file = SandWeb::File->new( 'location' => "$location", 'filename' => "$filename", ); my @fromfile = _do_file_read(); _do_file_write( 'filename' => $filename, 'location' => $location, 'contents' => "@fromfile", 'log_obj' => $log, ); return 1; } sub rename { my $self = shift; my %args = @_; my $location = $self->{'location'}; my $filename = $self->{'filename'}; my $log = $self->{'log_obj'}; my $tofile = $args{'tofile'}; $log->debug("renaming file : $location/$filename to $location/$tofile"); my $file_scan = _shell( method => 'execute', command => "mv $location/$filename $location/$tofile", ); return 1; } sub file_read { my $self = shift; my $location = $self->{'location'}; my $filename = $self->{'filename'}; return _do_file_read( 'location' => "$location", 'filename' => "$filename", ); } sub file_write { my $self = shift; my %args = @_; my $location = $self->{'location'}; my $filename = $self->{'filename'}; my $log = $self->{'log_obj'}; my $contents = $args{'contents'}; my $return = _do_file_write( 'location' => "$location", 'filename' => "$filename", 'contents' => "$contents", 'log_obj' => $log, ); return 1; } sub get_file_commands { my $self = shift; return ( 'create_file', 'create_folder', 'delete', 'rename', 'upload', ); } sub _do_file_write { my %args = @_; my $location = $args{'location'}; my $filename = $args{'filename'}; my $contents = $args{'contents'}; my $log = $args{'log_obj'}; my $filehandle = _shell( method => 'pipe', command => "dd of=$location/$filename 1>/dev/null 2>/dev/null", ); #open (FILEHANDLE,"|`dd of=$location/$filename 1>/dev/null 2>/dev/null`"); print $filehandle $contents; close $filehandle; return 1; } sub _do_file_read { my %args = @_; my $location = $args{'location'}; my $filename = $args{'filename'}; my $log = $args{'log_obj'}; my $file_contents = _shell( method => 'execute', command => "cat $location/$filename", ); return join('', $file_contents); } sub _shell { my %args = @_; my $log = $args{'log_obj'}; my $command = $args{'command'}; my $method = $args{'method'}; my $shell = SandWeb::Shell->new( log_obj => $log ); if ($method eq 'execute') { my %result = $shell->execute( command => "$command" ); return $result{'output'}; } elsif ($method eq 'pipe') { my $result = $shell->pipe( command => "$command" ); return $result; } $log->error("error - invalid execute method : $method"); return 0; } 1; |
From: Rob H. <for...@us...> - 2002-07-14 08:31:40
|
Update of /cvsroot/sandweb/sandweb/lib/SandWeb In directory usw-pr-cvs1:/tmp/cvs-serv6833/lib/SandWeb Modified Files: File.pm Shell.pm Log Message: all file ops now use a module. currently, the only supported module is File/Unix.pm Index: File.pm =================================================================== RCS file: /cvsroot/sandweb/sandweb/lib/SandWeb/File.pm,v retrieving revision 1.58 retrieving revision 1.59 diff -U2 -r1.58 -r1.59 --- File.pm 19 Jun 2002 07:09:00 -0000 1.58 +++ File.pm 14 Jul 2002 08:31:37 -0000 1.59 @@ -28,9 +28,6 @@ package SandWeb::File; -# standard modules -# -# POSIX is for the get_age() method - -use POSIX qw(strftime); +# file handling module(s) +use SandWeb::File::Unix; sub new { @@ -38,15 +35,14 @@ my %args = @_; - my $filename = $args{'filename'}; - # Security check, no "/.." or "../" allowed mister! - $filename =~ s:/\.\.::g; - $filename =~ s:\.\./::g; - my $log_obj = $args{'log_obj'}; - my $config = $args{'config_obj'}; - my $location = $args{'location'}; - - my ($dev,$ino,$mode,$nlink,$uid,$gid,$rdev,$size, - $atime,$mtime,$ctime,$blksize,$blocks) - = stat("$location/$filename"); + my $filename = $args{'filename'} || ''; + my $log_obj = $args{'log_obj'} || ''; + my $config = $args{'config_obj'} || ''; + my $location = $args{'location'} || ''; + + my $module = SandWeb::File::Unix->new( + filename => $args{'filename'}, + log_obj => $log_obj, + location => $args{'location'}, + ); my $self = bless { @@ -55,9 +51,9 @@ 'log_obj' => $log_obj, 'config_obj' => $config, - 'mode' => $mode, - 'uid' => $uid, - 'gid' => $gid, - 'size' => $size, - 'mtime' => $mtime, + 'perms' => $module->get_permissions(), + 'owner' => $module->get_owner(), + 'group' => $module->get_group(), + 'size' => $module->get_size(), + 'age' => $module->get_age(), }, $class; @@ -87,6 +83,5 @@ sub get_permissions { my $self = shift; - my $mode = $self->{'mode'}; - return $mode & 0777; + return $self->{'perms'}; } @@ -95,16 +90,13 @@ my $location = $self->{'location'}; my $filename = $self->{'filename'}; + my $log = $self->{'log_obj'}; - if (-d "$location/$filename") { - $file_type = 'Directory'; - } - elsif (-T "$location/$filename") { - $file_type = 'Text'; - } - elsif (-B "$location/$filename") { - $file_type = 'Binary'; - } else { - $file_type = 'Unknown'; - } + my $module = SandWeb::File::Unix->new( + filename => $filename, + log_obj => $log, + location => $location, + ); + + my $file_type = $module->get_file_type(); return $file_type; @@ -139,8 +131,5 @@ sub get_age { my $self = shift; - my $mtime = $self->{'mtime'}; - my $time = strftime "%m/%e/%Y %H:%M:%S", localtime $mtime; - - return $time; + return $self->{'age'}; } @@ -148,22 +137,18 @@ my $self = shift; my %args = @_; + my $location = $self->{'location'}; my $filename = $self->{'filename'}; my $log = $self->{'log_obj'}; - # passed from CGI->upload - FileHandle of incoming file. - my $filehandle = $args{'filehandle'}; -# begin workaround for IE/Windows upload behaviour - while ( $filename =~ /\\/ ) { - $filename = $'; - } -# end workaround for IE/Windows upload behaviour + my $filehandle = $args{'filehandle'}; - my @file = <$filehandle>; - chomp @file; + my $module = SandWeb::File::Unix->new( + filename => $filename, + log_obj => $log, + location => $location, + ); - open UPLOADFILE, ">$location/$filename"; - print UPLOADFILE join("\n", @file); - close UPLOADFILE; + return $module->upload( filehandle => $filehandle ); } @@ -173,36 +158,29 @@ my $filename = $self->{'filename'}; my $log = $self->{'log_obj'}; - my $config = $self->{'config_obj'}; - my $mime_location = $config->{'webserver'}->{'mime-types_location'}; - my $mime_file = $config->{'webserver'}->{'mime-types_file'}; - - $log->debug("downloading file : $location/$filename"); + my $mime_type = $self->get_mime_type() || ''; - my $mime_type = _get_mime_type( - 'location' => "$location", - 'filename' => "$filename", - 'mime_file' => "$mime_file", - 'mime_location' => "$mime_location", - 'log_obj' => "$log", + my $module = SandWeb::File::Unix->new( + filename => $filename, + log_obj => $log, + location => $location, ); - $log->debug("MIME type looks like : $mime_type"); + return $module->download( mime_type => $mime_type ); +} - unless ($mime_type) { - $mime_type = "binary/octet-stream"; - } +sub exists { + my $self = shift; + my $location = $self->{'location'}; + my $filename = $self->{'filename'}; + my $log = $self->{'log_obj'}; - print "content-type: $mime_type\n\n"; + my $module = SandWeb::File::Unix->new( + filename => $filename, + log_obj => $log, + location => $location, + ); - if (open FILE,"< $location/$filename") { - while (<FILE>) { - print $_; - } - } else { - $log->debug("Can't download $location/$filename : $!"); - } - close FILE; - + return $module->exists(); } @@ -216,12 +194,11 @@ $log->debug("creating file : $location/$filename"); - my $return = _do_file_write( - 'location' => $location, - 'filename' => $filename, - 'contents' => "$contents", - 'log_obj' => $log, + my $module = SandWeb::File::Unix->new( + filename => $filename, + log_obj => $log, + location => $location, ); - return $return; + return $module->create_file(); } @@ -233,13 +210,11 @@ $log->debug("creating folder : $location/$filename"); + my $module = SandWeb::File::Unix->new( + filename => $filename, + log_obj => $log, + location => $location, + ); - if (mkdir( "$location/$filename", 0750 )) { - $return = 1; - } else { - $log->debug("could not create folder $location/$filename : $!"); - $return = 0; - } - - return $return; + return $module->create_folder(); } @@ -252,13 +227,11 @@ $log->debug("removing file : $location/$filename"); + my $module = SandWeb::File::Unix->new( + filename => $filename, + log_obj => $log, + location => $location, + ); - if ( unlink("$location/$filename") ) { - $return = 1; - } else { - $log->debug("could not delete $location/$filename : $!"); - $return = 0; - } - - return $return; + return $module->delete(); } @@ -273,16 +246,11 @@ $log->debug("removing folder : $location/$filename"); + my $module = SandWeb::File::Unix->new( + filename => $filename, + log_obj => $log, + location => $location, + ); - if ($recurse) { - $return = _delete_tree( - 'location' => "$location", - 'filename' => "$filename", - 'log_obj' => "$log", - ); - } else { - $return = rmdir("$location/$filename"); - } - - return $return; + return $module->delete_folder(); } @@ -296,20 +264,11 @@ $log->debug("copying file : $location/$filename to $tofile"); - - my $file = SandWeb::File->new( - 'location' => "$location", - 'filename' => "$filename", - ); - - my @fromfile = _do_file_read(); - - _do_file_write( - 'filename' => $filename, - 'location' => $location, - 'contents' => "@fromfile", - 'log_obj' => $log, + my $module = SandWeb::File::Unix->new( + filename => $filename, + log_obj => $log, + location => $location, ); - return $return; + return $module->copy( tofile => $tofile ); } @@ -323,11 +282,11 @@ $log->debug("renaming file : $location/$filename to $location/$tofile"); - - my $return = rename( "$location/$filename", "$location/$tofile" ); - unless ($return) { - $log->debug("renaming failed : $!"); - } + my $module = SandWeb::File::Unix->new( + filename => $filename, + log_obj => $log, + location => $location, + ); - return $return; + return $module->rename( tofile => $tofile ); } @@ -337,9 +296,13 @@ my $location = $self->{'location'}; my $filename = $self->{'filename'}; + my $log = $self->{'log_obj'}; - return _do_file_read( - 'location' => "$location", - 'filename' => "$filename", + my $module = SandWeb::File::Unix->new( + filename => $filename, + log_obj => $log, + location => $location, ); + + return $module->file_read(); } @@ -353,12 +316,11 @@ my $contents = $args{'contents'}; - my $return = _do_file_write( - 'location' => "$location", - 'filename' => "$filename", - 'contents' => "$contents", - 'log_obj' => $log, + my $module = SandWeb::File::Unix->new( + filename => $filename, + log_obj => $log, + location => $location, ); - return $return; + return $module->file_write(contents => $contents); } @@ -386,8 +348,10 @@ my $mime_type; - my $mime_output = _do_file_read( + my $module = SandWeb::File::Unix->new( 'location' => "$mime_location", 'filename' => "$mime_file", ); + + my $mime_output = $module->file_read(); my @mimes = split('\n',$mime_output); @@ -404,85 +368,4 @@ } return $mime_type; -} - -sub _do_file_write { - my %args = @_; - my $location = $args{'location'}; - my $filename = $args{'filename'}; - my $contents = $args{'contents'}; - my $log = $args{'log_obj'}; - my $return; - - if (open (FILE, ">$location/$filename")) { - print FILE join('', $contents); - } else { - $log->debug("error opening $location/$filename for writing: $!"); - } - if (close FILE) { - $return = 1; - } else { - $log->debug("error closing $location/$filename from writing: $!"); - $return = 0; - } - - return $return; -} - -sub _do_file_read { - my %args = @_; - my $location = $args{'location'}; - my $filename = $args{'filename'}; - my $log = $args{'log_obj'}; - - open (FILE, "<$location/$filename"); - my @contents = <FILE>; - close FILE; - - return join('', @contents); -} - -sub _delete_tree { - my %args = @_; - my $location = $args{'location'}; - my $filename = $args{'filename'}; - my $log = $args{'log_obj'}; - my $return; - - if ( -d "$location/$filename" ) { - opendir(DIR, "$location/$filename"); - my @files = readdir(DIR); - closedir(DIR); - foreach my $file (@files) { - next if ($file eq "."); - next if ($file eq ".."); - if ( -d "$location/$filename/$file" ) { - $return = _delete_tree( - 'location' => "$location/$filename", - 'filename' => "$file", - 'log_obj' => "$log", - ); - $return = rmdir("$location/$filename/$file"); - unless ($return) { -# -# XXX - log not working here -# $log->debug("error deleting dir $location/$filename/$file: $!"); - } - } else { - $return = unlink("$location/$filename/$file"); - unless ($return) { -# -# XXX - log not working here -# $log->debug("error deleting file $location/$filename/$file: $!"); - } - } - } - $return = rmdir("$location/$filename"); - unless ($return) { -# -# XXX - log not working here -# $log->debug("error deleting dir $location/$filename/$file: $!"); - } - } - return $return; } Index: Shell.pm =================================================================== RCS file: /cvsroot/sandweb/sandweb/lib/SandWeb/Shell.pm,v retrieving revision 1.17 retrieving revision 1.18 diff -U2 -r1.17 -r1.18 --- Shell.pm 24 Jun 2002 20:39:25 -0000 1.17 +++ Shell.pm 14 Jul 2002 08:31:37 -0000 1.18 @@ -157,3 +157,19 @@ } +sub pipe { + my $self = shift; + my %args = @_; + + my $log = $self->{'log'} || ''; + + my $command = $args{'command'} || ''; + + if ($command) { + open (FILEHANDLE, "|`$command`"); + return \*FILEHANDLE; + } + + return 0; +} + 1; |
From: Rob H. <for...@us...> - 2002-07-13 07:54:56
|
Update of /cvsroot/sandweb/sandweb/lib/SandWeb/File In directory usw-pr-cvs1:/tmp/cvs-serv7597/File Log Message: Directory /cvsroot/sandweb/sandweb/lib/SandWeb/File added to the repository |
From: Rob H. <for...@us...> - 2002-07-13 07:02:58
|
Update of /cvsroot/sandweb/sandweb/bin In directory usw-pr-cvs1:/tmp/cvs-serv16248/bin Modified Files: sandweb.cgi Log Message: put check in to remove repo from config file even if repo dir no longer exists Index: sandweb.cgi =================================================================== RCS file: /cvsroot/sandweb/sandweb/bin/sandweb.cgi,v retrieving revision 1.306 retrieving revision 1.307 diff -U2 -r1.306 -r1.307 --- sandweb.cgi 13 Jul 2002 06:56:30 -0000 1.306 +++ sandweb.cgi 13 Jul 2002 07:02:53 -0000 1.307 @@ -2503,14 +2503,16 @@ 'location' => $config->{'paths'}->{'users_dir'}. "/" . $auth->get_username(), ); - if (!$file->delete_folder(recurse => 1)) { - set_message("unable to remove repository '$repo_name' from system."); - repository_menu(ck_auth => $ck_auth); - exit(0); - } elsif ((!$repository_selected) || ($repository_selected eq $new_string)) { - # cannot commit without repository name - $log->error("cannot delete without repository name!\n"); - set_message("cannot delete without repository name!\n"); - repository_menu( ck_auth => $ck_auth ); - exit(0); + if ($file->get_file_type() eq 'Directory') { + if (!$file->delete_folder(recurse => 1)) { + set_message("unable to remove repository '$repo_name' from system."); + repository_menu(ck_auth => $ck_auth); + exit(0); + } elsif ((!$repository_selected) || ($repository_selected eq $new_string)) { + # cannot commit without repository name + $log->error("cannot delete without repository name!\n"); + set_message("cannot delete without repository name!\n"); + repository_menu( ck_auth => $ck_auth ); + exit(0); + } } |
From: Rob H. <for...@us...> - 2002-07-13 06:56:33
|
Update of /cvsroot/sandweb/sandweb/bin In directory usw-pr-cvs1:/tmp/cvs-serv12610/bin Modified Files: sandweb.cgi Log Message: made it possible to remove module, even if module dir does not exist Index: sandweb.cgi =================================================================== RCS file: /cvsroot/sandweb/sandweb/bin/sandweb.cgi,v retrieving revision 1.305 retrieving revision 1.306 diff -U2 -r1.305 -r1.306 --- sandweb.cgi 11 Jul 2002 08:17:55 -0000 1.305 +++ sandweb.cgi 13 Jul 2002 06:56:30 -0000 1.306 @@ -2360,6 +2360,8 @@ # if ($user->module_exists(repo => $repo_name, module => $module_name)) { - # DELETE MODULE DIRECTORY + # remove module from config $user->delete_module(repo => $repo_name, module => $module_name); + # attempt to delete module + # first, create file object my $file = SandWeb::File->new( 'log_obj' => $log, @@ -2367,8 +2369,19 @@ 'location' => "$users_dir/$username/$repo_name", ); - if ($file->delete_folder(recurse => 1)) { - my $return = write_config(); + # is this file a directory? + if ($file->get_file_type() eq 'Directory') { + # if so, try to delete it + if ($file->delete_folder(recurse => 1)) { + # module directory removed + # all done, write config file + my $return = write_config(); + } else { + # failed removing the module directory + set_message("failed removing '$module_name' from system : $!"); + } } else { - set_message("failed removing '$module_name' from system : $!"); + # no module directory to remove + # all done, write config file + my $return = write_config(); } } else { |
From: Rob H. <for...@us...> - 2002-07-11 08:17:58
|
Update of /cvsroot/sandweb/sandweb/bin In directory usw-pr-cvs1:/tmp/cvs-serv21723/bin Modified Files: sandweb.cgi Log Message: fixed "update repo" bug, there was a "/" missing in the check to see if the repo dir existed.. yay :) Index: sandweb.cgi =================================================================== RCS file: /cvsroot/sandweb/sandweb/bin/sandweb.cgi,v retrieving revision 1.304 retrieving revision 1.305 diff -U2 -r1.304 -r1.305 --- sandweb.cgi 11 Jul 2002 07:34:13 -0000 1.304 +++ sandweb.cgi 11 Jul 2002 08:17:55 -0000 1.305 @@ -2449,5 +2449,5 @@ 'location' => $config->{'paths'}->{'users_dir'} . "/" . $auth->get_username(), ); - if (! -d $config->{'paths'}->{'users_dir'} . "/" . $auth->get_username() . $repo_name ) { + if (! -d $config->{'paths'}->{'users_dir'} . "/" . $auth->get_username() . "/" . $repo_name ) { if (!$file->create_folder()) { set_message("unable to create repository directory"); |
From: Rob H. <for...@us...> - 2002-07-11 08:11:38
|
Update of /cvsroot/sandweb/sandweb/bin In directory usw-pr-cvs1:/tmp/cvs-serv19370/bin Modified Files: sandweb-expect Log Message: hmm, the way I was doing error checking was causing expect to generate weird error codes ( $? == 768 ), only one "expect" statement can be used per block it seems, but you can expect as many phrases within that block as you wish. cool :) Index: sandweb-expect =================================================================== RCS file: /cvsroot/sandweb/sandweb/bin/sandweb-expect,v retrieving revision 1.7 retrieving revision 1.8 diff -U2 -r1.7 -r1.8 --- sandweb-expect 24 Jun 2002 20:28:32 -0000 1.7 +++ sandweb-expect 11 Jul 2002 08:11:35 -0000 1.8 @@ -22,11 +22,4 @@ expect { "Password:" { send "$system_password\r" } - eof { - send_user "Unexpected EOF\r\n" - exit 3 - } - } - - expect { "password:" { send "$vcs_password\r" } "Sorry." { @@ -40,5 +33,4 @@ } } - } @@ -52,15 +44,12 @@ expect { "Password:" { send "$system_password\r" } - eof { - send_user "Unexpected EOF\r\n" - exit 3 - } - } - - expect { "Sorry." { send "Invalid system username/password\r" exit 1 } + eof { + send_user "Unexpected EOF\r\n" + exit 3 + } } } @@ -74,11 +63,4 @@ expect { "password:" { send "$vcs_password\r" } - "Are you sure" { send "yes\r" } - eof { - send_user "Unexpected EOF\r\n" - exit 3 - } - } - expect { "Are you sure" { send "yes\r" } "Permission denied" { |
From: Rob H. <for...@us...> - 2002-07-11 07:34:16
|
Update of /cvsroot/sandweb/sandweb/bin In directory usw-pr-cvs1:/tmp/cvs-serv9730/bin Modified Files: sandweb.cgi Log Message: should be "main_window_url" not "main_menu_url" Index: sandweb.cgi =================================================================== RCS file: /cvsroot/sandweb/sandweb/bin/sandweb.cgi,v retrieving revision 1.303 retrieving revision 1.304 diff -U2 -r1.303 -r1.304 --- sandweb.cgi 19 Jun 2002 22:06:32 -0000 1.303 +++ sandweb.cgi 11 Jul 2002 07:34:13 -0000 1.304 @@ -1550,5 +1550,5 @@ my $repo_name = $args{'repo_name'}; - my $main_menu_url = "$ENV{'HTTP_REFERER'}"; + my $main_window_url = "$ENV{'HTTP_REFERER'}"; my @filename = (); @@ -1566,5 +1566,5 @@ MODULE_NAME => $module_name, REPO_NAME => $repo_name, - MAIN_WINDOW_URL => $main_menu_url, + MAIN_WINDOW_URL => $main_window_url, ); print $cgi->header( -cookie => $ck_auth ); |
From: Rob H. <for...@us...> - 2002-06-24 20:39:28
|
Update of /cvsroot/sandweb/sandweb/lib/SandWeb In directory usw-pr-cvs1:/tmp/cvs-serv7591/lib/SandWeb Modified Files: Shell.pm Log Message: improving expect error msgs Index: Shell.pm =================================================================== RCS file: /cvsroot/sandweb/sandweb/lib/SandWeb/Shell.pm,v retrieving revision 1.16 retrieving revision 1.17 diff -U2 -r1.16 -r1.17 --- Shell.pm 19 Jun 2002 08:04:28 -0000 1.16 +++ Shell.pm 24 Jun 2002 20:39:25 -0000 1.17 @@ -106,5 +106,7 @@ if ( $vcs ) { $log->debug("Using VCS username/password"); - my $raw_output = `$sandweb_expect system_vcs $system_username $system_password \'$vcs_password\' $command`; + $log->debug("Full command is : $sandweb_expect system_vcs $system_username \'$system_password\' \'$vcs_password\' $command"); + my $raw_output = `$sandweb_expect system_vcs $system_username \'$system_password\' \'$vcs_password\' "$command" 2>&1`; + $error = $?; $raw_output =~ s/ /\n/g; my @lined_output = split(/\n/, $raw_output); @@ -115,4 +117,5 @@ $log->debug("Not using VCS username/password"); my $raw_output = `$sandweb_expect system $system_username $system_password $command`; + $error = $?; $raw_output =~ s/^M/\n/g; my @lined_output = split(/\n/, $raw_output); @@ -124,4 +127,5 @@ $log->debug("Using VCS username/password"); my $raw_output = `$sandweb_expect vcs \'$vcs_password\' "$command" 2>&1`; + $error = $?; $raw_output =~ s/^M/\n/g; my @lined_output = split(/\n/, $raw_output); |
From: Rob H. <for...@us...> - 2002-06-24 20:39:28
|
Update of /cvsroot/sandweb/sandweb/lib/SandWeb/Repository In directory usw-pr-cvs1:/tmp/cvs-serv7591/lib/SandWeb/Repository Modified Files: cvs.pm Log Message: improving expect error msgs Index: cvs.pm =================================================================== RCS file: /cvsroot/sandweb/sandweb/lib/SandWeb/Repository/cvs.pm,v retrieving revision 1.27 retrieving revision 1.28 diff -U2 -r1.27 -r1.28 --- cvs.pm 19 Jun 2002 22:00:41 -0000 1.27 +++ cvs.pm 24 Jun 2002 20:39:25 -0000 1.28 @@ -288,5 +288,5 @@ my $output = $diff->colored_diff(); - my %return = ( + %return = ( output => $output, ); @@ -640,4 +640,9 @@ ); + if ($return{'error'}) { + # an error must have occurred + return %return; + } + my $raw_output = $return{'output'}; @@ -671,5 +676,5 @@ %return = ( - output => join(//,@output_lines), + output => join("",@output_lines), ); |