[haiku-commits] Re: r40212 - haiku/trunk/src/bin/package

  • From: John Scipione <jscipione@xxxxxxxxx>
  • To: "haiku-commits@xxxxxxxxxxxxx" <haiku-commits@xxxxxxxxxxxxx>
  • Date: Wed, 12 Jan 2011 10:32:17 -0500


On Jan 12, 2011, at 9:28 AM, zooey@xxxxxxxxxxxxxxx wrote:

Author: zooey
Date: 2011-01-12 15:28:58 +0100 (Wed, 12 Jan 2011)
New Revision: 40212
Changeset: http://dev.haiku-os.org/changeset/40212

Modified:
  haiku/trunk/src/bin/package/PackageWriter.cpp
Log:
* fix check in PackageWriter against ".."

Modified: haiku/trunk/src/bin/package/PackageWriter.cpp
===================================================================
--- haiku/trunk/src/bin/package/PackageWriter.cpp 2011-01-12 12:43:13 UTC (rev 40211) +++ haiku/trunk/src/bin/package/PackageWriter.cpp 2011-01-12 14:28:58 UTC (rev 40212)
@@ -746,8 +746,8 @@
   size_t nameLength, bool isImplicit)
{
   // check the component name -- don't allow "." or ".."
-    if (*name == '.'
- && (nameLength == 1 || (nameLength == 2 && name[2] == '.'))) {
+    if (name[0] == '.'
+ && (nameLength == 1 || (nameLength == 2 && name[1] == '.'))) {

Shouldn't that be:

if ((nameLength == 1 && name[0] == '.')
    || (nameLength == 2 && name[0] == '.' && name[1] == '.')) {

? Pendantic I know but better I think.


       fprintf(stderr, "Error: Invalid file name: \".\" and \"..\" "
           "are not allowed as path components\n");
       throw status_t(B_BAD_VALUE);



Other related posts: