title: What happens if i reject / resolve multiple times in Kriskowal's q?
body: <p>I'm studying the promises pattern and using kriskowal's q for node.js,</p>
  
  <p>having this snippet:</p>
  
  <pre><code>var deferred = Q.defer();
  try {
      messageData = JSON.parse(message);
  } catch (e) {
      global.logger.warn('Error parsing JSON message.');
      deferred.reject(e);
  }
  ...
  if (some_reason)
      deferred.resolve(something);
  ...
  return deferred.promise;
  </code></pre>
  
  <p>What if both the parser fails and <strong>some_reason</strong> is true?</p>
  
  <p>Will the execution procede from rejecting through resolving and both promise's method be called at different times, thus generating a bug?</p>
  
  <p>Should i avoid to call reject/resolve multiple times?</p>