diff --git a/r2/r2/lib/promote.py b/r2/r2/lib/promote.py index 55bda78d3..9a9797ca6 100644 --- a/r2/r2/lib/promote.py +++ b/r2/r2/lib/promote.py @@ -293,8 +293,12 @@ def terminate_campaign(link, campaign): edit_campaign(link, campaign, dates, campaign.bid, campaign.cpm, sr, campaign.priority, campaign.location) - update_promote_status(link, PROMOTE_STATUS.finished) - all_live_promo_srnames(_update=True) + campaigns = list(PromoCampaign._by_link(link._id)) + is_live = any(is_live_promo(link, camp) for camp in campaigns + if camp._id != campaign._id) + if not is_live: + update_promote_status(link, PROMOTE_STATUS.finished) + all_live_promo_srnames(_update=True) msg = 'terminated campaign %s (original end %s)' % (campaign._id, original_end.date())