Author: rhs
Date: Wed Oct 15 15:47:26 2014
New Revision: 1632098

URL: http://svn.apache.org/r1632098
Log:
PROTON-708: changed pn_driver_error to return the pn_error_t

Modified:
    qpid/proton/trunk/proton-c/include/proton/driver.h
    qpid/proton/trunk/proton-c/src/posix/driver.c
    qpid/proton/trunk/proton-c/src/windows/driver.c

Modified: qpid/proton/trunk/proton-c/include/proton/driver.h
URL: 
http://svn.apache.org/viewvc/qpid/proton/trunk/proton-c/include/proton/driver.h?rev=1632098&r1=1632097&r2=1632098&view=diff
==============================================================================
--- qpid/proton/trunk/proton-c/include/proton/driver.h (original)
+++ qpid/proton/trunk/proton-c/include/proton/driver.h Wed Oct 15 15:47:26 2014
@@ -73,13 +73,20 @@ PN_EXTERN pn_driver_t *pn_driver(void);
  */
 PN_EXTERN int pn_driver_errno(pn_driver_t *d);
 
-/** Return the most recent error text for d.
+/** Get additional error information associated with the driver.
+ *
+ * Whenever a driver operation fails, additional error information can
+ * be obtained using this function. The error object that is returned
+ * may also be used to clear the error condition.
+ *
+ * The pointer returned by this operation is valid until the
+ * driver object is freed.
  *
  * @param[in] d the driver
  *
- * @return the most recent error text for d
+ * @return the driver's error object
  */
-PN_EXTERN const char *pn_driver_error(pn_driver_t *d);
+PN_EXTERN pn_error_t *pn_driver_error(pn_driver_t *d);
 
 /** Set the tracing level for the given driver.
  *

Modified: qpid/proton/trunk/proton-c/src/posix/driver.c
URL: 
http://svn.apache.org/viewvc/qpid/proton/trunk/proton-c/src/posix/driver.c?rev=1632098&r1=1632097&r2=1632098&view=diff
==============================================================================
--- qpid/proton/trunk/proton-c/src/posix/driver.c (original)
+++ qpid/proton/trunk/proton-c/src/posix/driver.c Wed Oct 15 15:47:26 2014
@@ -576,12 +576,14 @@ pn_driver_t *pn_driver()
 
 int pn_driver_errno(pn_driver_t *d)
 {
-  return d ? pn_error_code(d->error) : PN_ARG_ERR;
+  assert(d);
+  return pn_error_code(d->error);
 }
 
-const char *pn_driver_error(pn_driver_t *d)
+pn_error_t *pn_driver_error(pn_driver_t *d)
 {
-  return d ? pn_error_text(d->error) : NULL;
+  assert(d);
+  return d->error;
 }
 
 void pn_driver_trace(pn_driver_t *d, pn_trace_t trace)

Modified: qpid/proton/trunk/proton-c/src/windows/driver.c
URL: 
http://svn.apache.org/viewvc/qpid/proton/trunk/proton-c/src/windows/driver.c?rev=1632098&r1=1632097&r2=1632098&view=diff
==============================================================================
--- qpid/proton/trunk/proton-c/src/windows/driver.c (original)
+++ qpid/proton/trunk/proton-c/src/windows/driver.c Wed Oct 15 15:47:26 2014
@@ -712,12 +712,14 @@ pn_driver_t *pn_driver()
 
 int pn_driver_errno(pn_driver_t *d)
 {
-  return d ? pn_error_code(d->error) : PN_ARG_ERR;
+  assert(d);
+  return pn_error_code(d->error);
 }
 
-const char *pn_driver_error(pn_driver_t *d)
+pn_error_t *pn_driver_error(pn_driver_t *d)
 {
-  return d ? pn_error_text(d->error) : NULL;
+  assert(d);
+  return d->error;
 }
 
 void pn_driver_trace(pn_driver_t *d, pn_trace_t trace)



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org
For additional commands, e-mail: commits-h...@qpid.apache.org

Reply via email to