diff options
author | Jason Tsay <jasontsay@google.com> | 2011-07-15 14:16:43 -0700 |
---|---|---|
committer | Jason Tsay <jasontsay@google.com> | 2011-08-17 12:01:27 -0700 |
commit | 0be6d247503f0a507dda5f97fabc50582103f596 (patch) | |
tree | cacccc0514e3061d7bbe4d0330a89b0480d221e4 | |
parent | 3f41a0ad0aba7cc09c5eed0d4ba8795fb6ff3fbb (diff) | |
download | gerrit-0be6d247503f0a507dda5f97fabc50582103f596.tar.gz |
Don't allow commit_delta to access commit message
Change-Id: I393efae8ecb51f442a7f2be7bf37edcfd619fb4e
-rw-r--r-- | gerrit-server/src/main/java/gerrit/PRED_commit_delta_4.java | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/gerrit-server/src/main/java/gerrit/PRED_commit_delta_4.java b/gerrit-server/src/main/java/gerrit/PRED_commit_delta_4.java index cd2f5c7b..4a9c71ba 100644 --- a/gerrit-server/src/main/java/gerrit/PRED_commit_delta_4.java +++ b/gerrit-server/src/main/java/gerrit/PRED_commit_delta_4.java @@ -101,12 +101,16 @@ public class PRED_commit_delta_4 extends Predicate.P4 { Pattern regex = (Pattern)((JavaObjectTerm)a1).object(); Iterator<PatchListEntry> iter = (Iterator<PatchListEntry>)((JavaObjectTerm)a5).object(); - if (iter.hasNext()) { + while (iter.hasNext()) { PatchListEntry patch = iter.next(); String newName = patch.getNewName(); String oldName = patch.getOldName(); Patch.ChangeType changeType = patch.getChangeType(); + if (newName.equals("/COMMIT_MSG")) { + continue; + } + if (regex.matcher(newName).matches() || (oldName != null && regex.matcher(oldName).matches())) { SymbolTerm changeSym = getTypeSymbol(changeType); @@ -117,13 +121,13 @@ public class PRED_commit_delta_4 extends Predicate.P4 { } if (!a2.unify(changeSym, engine.trail)) { - return engine.fail(); + continue; } if (!a3.unify(newSym, engine.trail)) { - return engine.fail(); + continue; } if (!a4.unify(oldSym, engine.trail)) { - return engine.fail(); + continue; } return engine.cont; } |