title: Exception is not propagated to onError() when thrown from doOnSubscribe()
body: <p>There is a <code>PublishProcessor</code> which calls <code>.doOnSubscribe(checkCondition)</code> operator to perform certain check. <code>checkCondition</code> is intended to throw <code>UnsupportedOperationException</code>, which then has to be propagated to the subscriber down the stream to <code>onError()</code> method. Instead, <code>UndeliverableException</code> is being thrown and process crashes. </p>
  
  <pre><code>publishProcessor
      .filter(() -&gt; { // predicate })
      .observeOn(scheduler)
      .doOnSubscribe(checkCondition)
      .to((sourceFlowable) -&gt; new FancyFlowable(sourceFlowable)))
      .safeSubscribe(subscriber);
  </code></pre>
  
  <p>Does anyone has idea what is going wrong here? Why exception thrown from <code>checkCondition</code> is not propagated to the <code>onError</code> of subscriber?</p>