From b9c8ae588a86f9b9a22807d1aa754f88c43bc3d4 Mon Sep 17 00:00:00 2001 From: Sam Date: Wed, 10 Sep 2014 14:48:00 +1000 Subject: [PATCH] minor refactor --- app/assets/javascripts/discourse/models/post_stream.js | 6 ++++-- .../javascripts/discourse/routes/topic_from_params_route.js | 4 ++++ 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/app/assets/javascripts/discourse/models/post_stream.js b/app/assets/javascripts/discourse/models/post_stream.js index 89cb99c4740..b0ede8f3275 100644 --- a/app/assets/javascripts/discourse/models/post_stream.js +++ b/app/assets/javascripts/discourse/models/post_stream.js @@ -649,8 +649,10 @@ Discourse.PostStream = Em.Object.extend({ var closest = null; this.get('posts').forEach(function (p) { - if (closest === postNumber) { return; } - if (!closest) { closest = p; } + if (!closest) { + closest = p; + return; + } if (Math.abs(postNumber - p.get('post_number')) < Math.abs(closest.get('post_number') - postNumber)) { closest = p; diff --git a/app/assets/javascripts/discourse/routes/topic_from_params_route.js b/app/assets/javascripts/discourse/routes/topic_from_params_route.js index f45bdf3d2e1..bc9e62f052c 100644 --- a/app/assets/javascripts/discourse/routes/topic_from_params_route.js +++ b/app/assets/javascripts/discourse/routes/topic_from_params_route.js @@ -22,6 +22,10 @@ Discourse.TopicFromParamsRoute = Discourse.Route.extend({ if (params.nearPost === "last") { params.nearPost = 999999999; } postStream.refresh(params).then(function () { + + // TODO we are seeing errors where closest post is null and this is exploding + // we need better handling and logging for this condition. + // The post we requested might not exist. Let's find the closest post var closestPost = postStream.closestPostForPostNumber(params.nearPost || 1), closest = closestPost.get('post_number'),