         finishPart(res)
 
         # Then return success to the caller if we filled in both sides
-        return cb(undefined, this) if (@next isnt undefined) and (@prev isnt undefined)
+        if (@next isnt undefined) and (@prev isnt undefined) and gotVotes
+          return cb(undefined, this)
 
     # Fire the workers to update the next and prev
     #

        @next = res[1] || null
    redis.zrevrangebyscore [@key(), "#{@time - 1}", '-inf', 'WITHSCORES', 'LIMIT', 0, 1], finish (res) =>
        @prev = res[1] || null

  # Return a comic stamped at `stamp` to caller by
  # invoking callback as `cb(err, Comic)` if it is found.


  # The Class and Instance accessors for the keys.
  # The instance accessor just looks it up by class one
  @key: (suffix) ->
    key = "#{@prefix}:comics"
    key += ":#{suffix}" if suffix?
    key
  key: (suffix) -> @constructor.key(suffix)

  # Describe either a new, or exsting comic
  constructor: (@url, @time, options={}) ->
