@@ -421,13 +421,13 @@ public void blockListGuard() throws Exception {
421421 sink (normalized ); // $ hasTaintFlow
422422 }
423423 }
424- // PathInjectionSanitizer + partial string match with prefixes is considered unsafe
424+ // PathInjectionSanitizer + partial string match with disallowed prefixes
425425 {
426426 String source = (String ) source ();
427427 String normalized = Paths .get (source ).normalize ().toString ();
428- if (normalized .contains ("/data" )) {
429- sink (source ); // $ hasTaintFlow
430- sink (normalized ); // $ hasTaintFlow
428+ if (! normalized .contains ("/data" )) {
429+ sink (source ); // Safe
430+ sink (normalized ); // Safe
431431 } else {
432432 sink (source ); // $ hasTaintFlow
433433 sink (normalized ); // $ hasTaintFlow
@@ -436,9 +436,9 @@ public void blockListGuard() throws Exception {
436436 {
437437 String source = (String ) source ();
438438 String normalized = Paths .get (source ).normalize ().toString ();
439- if (normalized .regionMatches (1 , "/data" , 0 , 5 )) {
440- sink (source ); // $ hasTaintFlow
441- sink (normalized ); // $ hasTaintFlow
439+ if (! normalized .regionMatches (1 , "/data" , 0 , 5 )) {
440+ sink (source ); // Safe
441+ sink (normalized ); // Safe
442442 } else {
443443 sink (source ); // $ hasTaintFlow
444444 sink (normalized ); // $ hasTaintFlow
@@ -447,9 +447,9 @@ public void blockListGuard() throws Exception {
447447 {
448448 String source = (String ) source ();
449449 String normalized = Paths .get (source ).normalize ().toString ();
450- if (normalized .matches (".*/data/.*" )) {
451- sink (source ); // $ hasTaintFlow
452- sink (normalized ); // $ hasTaintFlow
450+ if (! normalized .matches (".*/data/.*" )) {
451+ sink (source ); // Safe
452+ sink (normalized ); // Safe
453453 } else {
454454 sink (source ); // $ hasTaintFlow
455455 sink (normalized ); // $ hasTaintFlow
0 commit comments