ewsclient: Only return FALSE when an error occurred
ewsclient: Only return FALSE when an error occurred

When we cancel the pending messages from the response callback of the
first successful message, the remaining callbacks are called after the
first one has returned to the main loop. This behaviour of the new
SoupSession is different from the older SoupSessionAsync, where the
callbacks were invoked before soup_session_cancel_message returned.

Due to this, the status(=TRUE) set by the first successful message was
getting lost, and we were returning FALSE even when no error was
encountered.

Save the result in the GAsyncResult to remember it across the
callbacks.

Fall out from 6c3e3c2d2d9f688157513c0f0403645c4c196754

https://bugzilla.gnome.org/show_bug.cgi?id=750392

felipeborges/gnome-online-accounts,felipeborges/gnome-online-accounts,felipeborges/gnome-online-accounts,Distrotech/gnome-online-accounts,Distrotech/gnome-online-accounts,ritzk/gnome-online-accounts,ritzk/gnome-online-accounts,Distrotech/gnome-online-accounts,ritzk/gnome-online-accounts