From 909ce5fefb682d682a3c531fb9b499328de478fd Mon Sep 17 00:00:00 2001 From: Andre D Date: Tue, 22 Oct 2013 17:42:04 -0400 Subject: [PATCH] submit_text: Solve race condition issues by aborting old requests. --- r2/r2/public/static/js/ui.js | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/r2/r2/public/static/js/ui.js b/r2/r2/public/static/js/ui.js index 1a2e18cf0..6a7ac3a7e 100644 --- a/r2/r2/public/static/js/ui.js +++ b/r2/r2/public/static/js/ui.js @@ -634,7 +634,10 @@ r.ui.SubredditSubmitText = Backbone.View.extend({ var sr = this.$input.val() this.$sr.text(sr) this.$el.addClass('working') - this.cache.ajax(sr, { + if (this.req && this.req.abort) { + this.req.abort() + } + this.req = this.cache.ajax(sr, { url: '/r/' + sr + '/api/submit_text/.json', dataType: 'json' }).done(_.bind(this.settext, this, sr)) @@ -650,10 +653,12 @@ r.ui.SubredditSubmitText = Backbone.View.extend({ }, error: function() { + delete this.req this.hide() }, settext: function(sr, data) { + delete this.req if (!data.submit_text || !data.submit_text.trim()) { this.hide() } else {