diff --git a/assets/scripts/app/templates/repos/show/actions.hbs b/assets/scripts/app/templates/repos/show/actions.hbs
index d8c62e7f..504d70c2 100644
--- a/assets/scripts/app/templates/repos/show/actions.hbs
+++ b/assets/scripts/app/templates/repos/show/actions.hbs
@@ -39,11 +39,15 @@
{{/if}}
{{/if}}
- {{#if view.displayRemoveLog}}
-
-
-
+ {{! the next if is a hack for refreshing displayRemoveLog when we change
+ views, it sometimes doesn't work properly }}
+ {{#if view.jobIdForLog}}
+ {{#if view.displayRemoveLog}}
+
+
+
+ {{/if}}
{{/if}}
{{#if view.displayCodeClimate}}
diff --git a/assets/scripts/app/views/repo/show.coffee b/assets/scripts/app/views/repo/show.coffee
index 07dc6359..9f02f081 100644
--- a/assets/scripts/app/views/repo/show.coffee
+++ b/assets/scripts/app/views/repo/show.coffee
@@ -288,13 +288,14 @@ Travis.reopen
).property('jobIdForLog', 'job.log.token', 'build.jobs.firstObject.log.token')
canRemoveLog: (->
- @get('displayRemoveLog') && @get('hasPermission')
- ).property('displayRemoveLog', 'hasPermission')
+ @get('displayRemoveLog')
+ ).property('displayRemoveLog')
displayRemoveLog: (->
- if job = Travis.Job.find(@get('jobIdForLog'))
- (@get('isJobTab') || (@get('isBuildTab') && @get('build.jobs.length') == 1)) && job.get('canRemoveLog')
- ).property('isJobTab', 'isBuildTab', 'build.jobs.length', '_job.canRemoveLog', 'jobIdForLog')
+ if job = @get('_job')
+ (@get('isJobTab') || (@get('isBuildTab') && @get('build.jobs.length') == 1)) &&
+ job.get('canRemoveLog') && @get('hasPermission')
+ ).property('isJobTab', 'isBuildTab', 'build.jobs.length', '_job.canRemoveLog', 'jobIdForLog', 'canRemoveLog', 'hasPermission')
canCancelBuild: (->
@get('displayCancelBuild') && @get('hasPermission')