diff options
author | Shawn Pearce <sop@google.com> | 2013-08-14 12:18:59 -0700 |
---|---|---|
committer | Shawn Pearce <sop@google.com> | 2013-08-14 12:18:59 -0700 |
commit | 560beb5079df6fa4d14fa2dbd68566ce429f8c5b (patch) | |
tree | a0e4d49ea56e236f33dfee4519115b8c86aa459f | |
parent | 5995feb5abe2834998a9809cdcfc65efd994397d (diff) | |
parent | f238e6fefa9715422ceeabb4ba875ebf12cb50b8 (diff) |
Merge branch 'stable-2.6' into stable-2.7v2.7-rc4v2.7.0-rc4-based
* stable-2.6:
Fix browser NPE when ChangeCache is incomplete
Conflicts:
gerrit-gwtui/src/main/java/com/google/gerrit/client/changes/ChangeDescriptionBlock.java
gerrit-gwtui/src/main/java/com/google/gerrit/client/changes/PublishCommentScreen.java
Change-Id: Ib1c1166426c65c5ae44cb2146bc4566b38c16cc4
4 files changed, 15 insertions, 12 deletions
diff --git a/gerrit-gwtui/src/main/java/com/google/gerrit/client/changes/ChangeDescriptionBlock.java b/gerrit-gwtui/src/main/java/com/google/gerrit/client/changes/ChangeDescriptionBlock.java index e5c8dcf22e..2fcb7e87dc 100644 --- a/gerrit-gwtui/src/main/java/com/google/gerrit/client/changes/ChangeDescriptionBlock.java +++ b/gerrit-gwtui/src/main/java/com/google/gerrit/client/changes/ChangeDescriptionBlock.java @@ -16,8 +16,8 @@ package com.google.gerrit.client.changes; import com.google.gerrit.client.ui.CommentLinkProcessor; import com.google.gerrit.common.data.AccountInfoCache; +import com.google.gerrit.common.data.ChangeDetail; import com.google.gerrit.common.data.SubmitTypeRecord; -import com.google.gerrit.reviewdb.client.Change; import com.google.gerrit.reviewdb.client.PatchSetInfo; import com.google.gwt.user.client.ui.Composite; import com.google.gwt.user.client.ui.HorizontalPanel; @@ -37,12 +37,12 @@ public class ChangeDescriptionBlock extends Composite { initWidget(hp); } - public void display(Change chg, Boolean starred, Boolean canEditCommitMessage, + public void display(ChangeDetail chg, Boolean starred, Boolean canEditCommitMessage, PatchSetInfo info, AccountInfoCache acc, SubmitTypeRecord submitTypeRecord, CommentLinkProcessor commentLinkProcessor) { infoBlock.display(chg, acc, submitTypeRecord); - messageBlock.display(chg.currentPatchSetId(), starred, + messageBlock.display(chg.getChange().currentPatchSetId(), starred, canEditCommitMessage, info.getMessage(), commentLinkProcessor); } } diff --git a/gerrit-gwtui/src/main/java/com/google/gerrit/client/changes/ChangeInfoBlock.java b/gerrit-gwtui/src/main/java/com/google/gerrit/client/changes/ChangeInfoBlock.java index b942824f73..b4ae2f3d7b 100644 --- a/gerrit-gwtui/src/main/java/com/google/gerrit/client/changes/ChangeInfoBlock.java +++ b/gerrit-gwtui/src/main/java/com/google/gerrit/client/changes/ChangeInfoBlock.java @@ -95,8 +95,9 @@ public class ChangeInfoBlock extends Composite { table.getCellFormatter().addStyleName(row, 0, Gerrit.RESOURCES.css().header()); } - public void display(final Change chg, final AccountInfoCache acc, - SubmitTypeRecord submitTypeRecord) { + public void display(final ChangeDetail changeDetail, + final AccountInfoCache acc, SubmitTypeRecord submitTypeRecord) { + final Change chg = changeDetail.getChange(); final Branch.NameKey dst = chg.getDest(); CopyableLabel changeIdLabel = @@ -114,7 +115,7 @@ public class ChangeInfoBlock extends Composite { table.setWidget(R_BRANCH, 1, new BranchLink(dst.getShortName(), chg .getProject(), chg.getStatus(), dst.get(), null)); - table.setWidget(R_TOPIC, 1, topic(chg)); + table.setWidget(R_TOPIC, 1, topic(changeDetail)); table.setText(R_UPLOADED, 1, mediumFormat(chg.getCreatedOn())); table.setText(R_UPDATED, 1, mediumFormat(chg.getLastUpdatedOn())); table.setText(R_STATUS, 1, Util.toLongString(chg.getStatus())); @@ -146,7 +147,8 @@ public class ChangeInfoBlock extends Composite { } } - public Widget topic(final Change chg) { + public Widget topic(final ChangeDetail changeDetail) { + final Change chg = changeDetail.getChange(); final Branch.NameKey dst = chg.getDest(); FlowPanel fp = new FlowPanel(); @@ -154,9 +156,6 @@ public class ChangeInfoBlock extends Composite { fp.add(new BranchLink(chg.getTopic(), chg.getProject(), chg.getStatus(), dst.get(), chg.getTopic())); - ChangeDetailCache detailCache = ChangeCache.get(chg.getId()).getChangeDetailCache(); - ChangeDetail changeDetail = detailCache.get(); - if (changeDetail.canEditTopicName()) { final Image edit = new Image(Gerrit.RESOURCES.edit()); edit.addStyleName(Gerrit.RESOURCES.css().link()); diff --git a/gerrit-gwtui/src/main/java/com/google/gerrit/client/changes/ChangeScreen.java b/gerrit-gwtui/src/main/java/com/google/gerrit/client/changes/ChangeScreen.java index c26afaa0a9..c69f915ea3 100644 --- a/gerrit-gwtui/src/main/java/com/google/gerrit/client/changes/ChangeScreen.java +++ b/gerrit-gwtui/src/main/java/com/google/gerrit/client/changes/ChangeScreen.java @@ -322,7 +322,7 @@ public class ChangeScreen extends Screen dependencies.setAccountInfoCache(detail.getAccounts()); - descriptionBlock.display(detail.getChange(), + descriptionBlock.display(detail, detail.isStarred(), detail.canEditCommitMessage(), detail.getCurrentPatchSetDetail().getInfo(), diff --git a/gerrit-gwtui/src/main/java/com/google/gerrit/client/changes/PublishCommentScreen.java b/gerrit-gwtui/src/main/java/com/google/gerrit/client/changes/PublishCommentScreen.java index 4fa76dd236..4e710db053 100644 --- a/gerrit-gwtui/src/main/java/com/google/gerrit/client/changes/PublishCommentScreen.java +++ b/gerrit-gwtui/src/main/java/com/google/gerrit/client/changes/PublishCommentScreen.java @@ -31,6 +31,7 @@ import com.google.gerrit.client.ui.CommentLinkProcessor; import com.google.gerrit.client.ui.PatchLink; import com.google.gerrit.client.ui.SmallHeading; import com.google.gerrit.common.PageLinks; +import com.google.gerrit.common.data.ChangeDetail; import com.google.gerrit.common.data.PatchSetPublishDetail; import com.google.gerrit.reviewdb.client.Change; import com.google.gerrit.reviewdb.client.Patch; @@ -318,9 +319,12 @@ public class PublishCommentScreen extends AccountScreen implements } private void display(final PatchSetPublishDetail r) { + ChangeDetail changeDetail = new ChangeDetail(); + changeDetail.setChange(r.getChange()); + setPageTitle(Util.M.publishComments(r.getChange().getKey().abbreviate(), patchSetId.get())); - descBlock.display(r.getChange(), null, false, r.getPatchSetInfo(), r.getAccounts(), + descBlock.display(changeDetail, null, false, r.getPatchSetInfo(), r.getAccounts(), r.getSubmitTypeRecord(), commentLinkProcessor); if (r.getChange().getStatus().isOpen()) { |