From: <mg...@us...> - 2007-11-29 15:09:46
|
Revision: 322 http://planeshift.svn.sourceforge.net/planeshift/?rev=322&view=rev Author: mgist Date: 2007-11-29 07:09:36 -0800 (Thu, 29 Nov 2007) Log Message: ----------- - printf fix. Modified Paths: -------------- trunk/src/common/util/fileutil.cpp Modified: trunk/src/common/util/fileutil.cpp =================================================================== --- trunk/src/common/util/fileutil.cpp 2007-11-29 09:29:39 UTC (rev 321) +++ trunk/src/common/util/fileutil.cpp 2007-11-29 15:09:36 UTC (rev 322) @@ -139,7 +139,7 @@ delete[] path; if (rc < 0) - if(vfs->Exists(csString("/this/") + directory)) + if(!vfs->Exists(csString("/this/") + directory)) printf("Couldn't create directory '%s'.", directory); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mg...@us...> - 2008-02-16 11:04:48
|
Revision: 835 http://planeshift.svn.sourceforge.net/planeshift/?rev=835&view=rev Author: mgist Date: 2008-02-16 03:04:52 -0800 (Sat, 16 Feb 2008) Log Message: ----------- - Noob error in directory copying. Modified Paths: -------------- trunk/src/common/util/fileutil.cpp Modified: trunk/src/common/util/fileutil.cpp =================================================================== --- trunk/src/common/util/fileutil.cpp 2008-02-16 09:26:34 UTC (rev 834) +++ trunk/src/common/util/fileutil.cpp 2008-02-16 11:04:52 UTC (rev 835) @@ -197,32 +197,29 @@ n2= to; } - if(statTo->TYPE_DIRECTORY) + FileStat* statFrom = StatFile(fileFrom); + + if(statFrom->TYPE_DIRECTORY) { if(!vfs->Exists(n2)) { MakeDirectory(n2); } - - FileStat* statFrom = StatFile(fileFrom); - - if(statFrom->TYPE_DIRECTORY) + else if(statTo->TYPE_FILE) { - csRef<iStringArray> fileList = vfs->FindFiles(n1); - for(uint i=0; i<fileList->GetSize(); i++) - { - csString file = fileList->Get(i); - csString currentTo = n2; - currentTo.AppendFmt("/%s", file.Slice(file.FindLast('/')).GetData()); - CopyFile(file, currentTo, true, isExecutable(file)); - } - } - else - { if(!silent) printf("Can't write a file where a directory already exists.\n", fileTo.GetData()); return false; } + + csRef<iStringArray> fileList = vfs->FindFiles(n1); + for(uint i=0; i<fileList->GetSize(); i++) + { + csString file = fileList->Get(i); + csString currentTo = n2; + currentTo.AppendFmt("/%s", file.Slice(file.FindLast('/')).GetData()); + CopyFile(file, currentTo, true, isExecutable(file)); + } } else { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mg...@us...> - 2008-02-16 11:31:57
|
Revision: 836 http://planeshift.svn.sourceforge.net/planeshift/?rev=836&view=rev Author: mgist Date: 2008-02-16 03:32:00 -0800 (Sat, 16 Feb 2008) Log Message: ----------- - Sigh. Modified Paths: -------------- trunk/src/common/util/fileutil.cpp Modified: trunk/src/common/util/fileutil.cpp =================================================================== --- trunk/src/common/util/fileutil.cpp 2008-02-16 11:04:52 UTC (rev 835) +++ trunk/src/common/util/fileutil.cpp 2008-02-16 11:32:00 UTC (rev 836) @@ -199,13 +199,13 @@ FileStat* statFrom = StatFile(fileFrom); - if(statFrom->TYPE_DIRECTORY) + if(statFrom->type == statFrom->TYPE_DIRECTORY) { if(!vfs->Exists(n2)) { MakeDirectory(n2); } - else if(statTo->TYPE_FILE) + else if(statTo->type == statTo->TYPE_FILE) { if(!silent) printf("Can't write a file where a directory already exists.\n", fileTo.GetData()); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mg...@us...> - 2008-05-27 13:04:20
|
Revision: 1609 http://planeshift.svn.sourceforge.net/planeshift/?rev=1609&view=rev Author: mgist Date: 2008-05-27 06:04:25 -0700 (Tue, 27 May 2008) Log Message: ----------- - Changed FileUtil::isExecutable to return true if the file is missing. That way we skip it in the updater - it's not our problem. Modified Paths: -------------- trunk/src/common/util/fileutil.cpp Modified: trunk/src/common/util/fileutil.cpp =================================================================== --- trunk/src/common/util/fileutil.cpp 2008-05-27 12:59:03 UTC (rev 1608) +++ trunk/src/common/util/fileutil.cpp 2008-05-27 13:04:25 UTC (rev 1609) @@ -218,7 +218,7 @@ csRef<FileStat> stats = StatFile(path); if(stats.IsValid()) return stats->executable; - return NULL; + return true; } void FileUtil::SetExecutable(const char *path) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mg...@us...> - 2008-03-02 04:47:13
|
Revision: 1095 http://planeshift.svn.sourceforge.net/planeshift/?rev=1095&view=rev Author: mgist Date: 2008-03-01 20:47:19 -0800 (Sat, 01 Mar 2008) Log Message: ----------- - Compile fix. Modified Paths: -------------- trunk/src/common/util/fileutil.cpp Modified: trunk/src/common/util/fileutil.cpp =================================================================== --- trunk/src/common/util/fileutil.cpp 2008-03-02 04:46:09 UTC (rev 1094) +++ trunk/src/common/util/fileutil.cpp 2008-03-02 04:47:19 UTC (rev 1095) @@ -222,7 +222,7 @@ void FileUtil::SetExecutable(const char *path) { #ifdef CS_PLATFORM_UNIX - if(chmod(real.GetData(), S_IRUSR | S_IWUSR | S_IXUSR | S_IRGRP | S_IWGRP | S_IXGRP) == -1) - printf("Failed to set permissions on file %s.\n", real.GetData()); + if(chmod(path, S_IRUSR | S_IWUSR | S_IXUSR | S_IRGRP | S_IWGRP | S_IXGRP) == -1) + printf("Failed to set permissions on file %s.\n", path); #endif } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mg...@us...> - 2008-05-27 12:58:58
|
Revision: 1608 http://planeshift.svn.sourceforge.net/planeshift/?rev=1608&view=rev Author: mgist Date: 2008-05-27 05:59:03 -0700 (Tue, 27 May 2008) Log Message: ----------- - Fix FileUtil::isExecutable crash when StatFile returns null. Modified Paths: -------------- trunk/src/common/util/fileutil.cpp Modified: trunk/src/common/util/fileutil.cpp =================================================================== --- trunk/src/common/util/fileutil.cpp 2008-05-27 02:20:35 UTC (rev 1607) +++ trunk/src/common/util/fileutil.cpp 2008-05-27 12:59:03 UTC (rev 1608) @@ -216,7 +216,9 @@ bool FileUtil::isExecutable(const char *path) { csRef<FileStat> stats = StatFile(path); - return stats->executable; + if(stats.IsValid()) + return stats->executable; + return NULL; } void FileUtil::SetExecutable(const char *path) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mg...@us...> - 2008-05-27 23:33:04
|
Revision: 1611 http://planeshift.svn.sourceforge.net/planeshift/?rev=1611&view=rev Author: mgist Date: 2008-05-27 16:33:13 -0700 (Tue, 27 May 2008) Log Message: ----------- - Compile fix. Modified Paths: -------------- trunk/src/common/util/fileutil.cpp Modified: trunk/src/common/util/fileutil.cpp =================================================================== --- trunk/src/common/util/fileutil.cpp 2008-05-27 23:23:18 UTC (rev 1610) +++ trunk/src/common/util/fileutil.cpp 2008-05-27 23:33:13 UTC (rev 1611) @@ -154,9 +154,9 @@ csString n2; csString file = to; + csRef<iDataBuffer> buff = vfs->GetRealPath(to); if(vfsPath) { - csRef<iDataBuffer> buff = vfs->GetRealPath(to); if(!buff) { if(!silent) @@ -212,7 +212,7 @@ if(executable) { if(chmod(buff->GetData(), fromStat->mode | S_IXUSR | S_IXGRP) == -1) - printf("Failed to set permissions on file %s.\n", real.GetData()); + printf("Failed to set permissions on file %s.\n", to.GetData()); } #endif This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mg...@us...> - 2008-05-28 23:33:44
|
Revision: 1614 http://planeshift.svn.sourceforge.net/planeshift/?rev=1614&view=rev Author: mgist Date: 2008-05-28 16:33:49 -0700 (Wed, 28 May 2008) Log Message: ----------- - Improved permissions handling in the updater. Modified Paths: -------------- trunk/src/common/util/fileutil.cpp Modified: trunk/src/common/util/fileutil.cpp =================================================================== --- trunk/src/common/util/fileutil.cpp 2008-05-28 23:15:20 UTC (rev 1613) +++ trunk/src/common/util/fileutil.cpp 2008-05-28 23:33:49 UTC (rev 1614) @@ -207,7 +207,17 @@ } #ifdef CS_PLATFORM_UNIX - // On unix type systems we might need to set permissions after copy. + /** + * On unix type systems we might need to set permissions after copy. + * If the 'from' stat is null, the file is probably in a zip. + * So we use the permissions of the parent folder of the 'to' dir. + */ + if(!fromStat.IsValid()) + { + n2.Truncate(n2.FindLast('/')); + csRef<iDataBuffer> db = vfs->GetRealPath(n2); + fromStat = fileUtil->StatFile(db->GetData()); + } SetPermissions(buff->GetData(), fromStat); if(executable) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mg...@us...> - 2008-05-28 23:35:04
|
Revision: 1615 http://planeshift.svn.sourceforge.net/planeshift/?rev=1615&view=rev Author: mgist Date: 2008-05-28 16:35:12 -0700 (Wed, 28 May 2008) Log Message: ----------- - Typo. Modified Paths: -------------- trunk/src/common/util/fileutil.cpp Modified: trunk/src/common/util/fileutil.cpp =================================================================== --- trunk/src/common/util/fileutil.cpp 2008-05-28 23:33:49 UTC (rev 1614) +++ trunk/src/common/util/fileutil.cpp 2008-05-28 23:35:12 UTC (rev 1615) @@ -210,7 +210,7 @@ /** * On unix type systems we might need to set permissions after copy. * If the 'from' stat is null, the file is probably in a zip. - * So we use the permissions of the parent folder of the 'to' dir. + * So we use the permissions of the parent folder of the 'to' location. */ if(!fromStat.IsValid()) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mg...@us...> - 2008-05-29 04:05:15
|
Revision: 1617 http://planeshift.svn.sourceforge.net/planeshift/?rev=1617&view=rev Author: mgist Date: 2008-05-28 21:04:19 -0700 (Wed, 28 May 2008) Log Message: ----------- - Compile fix. Modified Paths: -------------- trunk/src/common/util/fileutil.cpp Modified: trunk/src/common/util/fileutil.cpp =================================================================== --- trunk/src/common/util/fileutil.cpp 2008-05-29 02:29:32 UTC (rev 1616) +++ trunk/src/common/util/fileutil.cpp 2008-05-29 04:04:19 UTC (rev 1617) @@ -216,7 +216,7 @@ { n2.Truncate(n2.FindLast('/')); csRef<iDataBuffer> db = vfs->GetRealPath(n2); - fromStat = fileUtil->StatFile(db->GetData()); + fromStat = StatFile(db->GetData()); } SetPermissions(buff->GetData(), fromStat); if(executable) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mg...@us...> - 2008-06-02 18:20:10
|
Revision: 1661 http://planeshift.svn.sourceforge.net/planeshift/?rev=1661&view=rev Author: mgist Date: 2008-06-02 11:20:01 -0700 (Mon, 02 Jun 2008) Log Message: ----------- - Fixed being 1 off on a truncate. Modified Paths: -------------- trunk/src/common/util/fileutil.cpp Modified: trunk/src/common/util/fileutil.cpp =================================================================== --- trunk/src/common/util/fileutil.cpp 2008-06-02 16:29:51 UTC (rev 1660) +++ trunk/src/common/util/fileutil.cpp 2008-06-02 18:20:01 UTC (rev 1661) @@ -214,7 +214,7 @@ */ if(!fromStat.IsValid()) { - n2.Truncate(n2.FindLast('/')); + n2.Truncate(n2.FindLast('/')+1); csRef<iDataBuffer> db = vfs->GetRealPath(n2); fromStat = StatFile(db->GetData()); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mg...@us...> - 2008-06-12 20:26:24
|
Revision: 1738 http://planeshift.svn.sourceforge.net/planeshift/?rev=1738&view=rev Author: mgist Date: 2008-06-12 13:25:21 -0700 (Thu, 12 Jun 2008) Log Message: ----------- - Fix for *nix. Modified Paths: -------------- trunk/src/common/util/fileutil.cpp Modified: trunk/src/common/util/fileutil.cpp =================================================================== --- trunk/src/common/util/fileutil.cpp 2008-06-12 20:21:23 UTC (rev 1737) +++ trunk/src/common/util/fileutil.cpp 2008-06-12 20:25:21 UTC (rev 1738) @@ -116,7 +116,11 @@ } real = vfs->GetRealPath(dir); +#ifdef CS_PLATFORM_WIN32 rc = mkdir(real->GetData()); +#else + rc = mkdir(real->GetData(), S_IRUSR | S_IWUSR); +#endif } #ifdef CS_PLATFORM_UNIX This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mg...@us...> - 2008-06-12 20:27:15
|
Revision: 1740 http://planeshift.svn.sourceforge.net/planeshift/?rev=1740&view=rev Author: mgist Date: 2008-06-12 13:27:05 -0700 (Thu, 12 Jun 2008) Log Message: ----------- - Fix for *nix. Modified Paths: -------------- trunk/src/common/util/fileutil.cpp Modified: trunk/src/common/util/fileutil.cpp =================================================================== --- trunk/src/common/util/fileutil.cpp 2008-06-12 20:25:39 UTC (rev 1739) +++ trunk/src/common/util/fileutil.cpp 2008-06-12 20:27:05 UTC (rev 1740) @@ -101,7 +101,11 @@ csRef<iDataBuffer> realPath = vfs->GetRealPath(directory); while(!vfs->Exists(directory)) { - int rc = mkdir(realPath->GetData()); +#ifdef CS_PLATFORM_WIN32 + int rc = mkdir(realPath->GetData()); +#else + int rc = mkdir(realPath->GetData(), S_IRUSR | S_IWUSR); +#endif csString dir = directory; csRef<iDataBuffer> real; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |