You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@apr.apache.org by dr...@apache.org on 2003/11/23 21:33:09 UTC
cvs commit: apr/dso/beos dso.c
dreid 2003/11/23 12:33:09
Modified: include/arch/beos apr_arch_dso.h
dso/beos dso.c
Log:
Modify the beos dso code to always return a structure, adding the errormsg
field as this seems to be the raison'd'etre for returning the structure.
Revision Changes Path
1.2 +3 -0 apr/include/arch/beos/apr_arch_dso.h
Index: apr_arch_dso.h
===================================================================
RCS file: /home/cvs/apr/include/arch/beos/apr_arch_dso.h,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- apr_arch_dso.h 6 Jan 2003 23:44:22 -0000 1.1
+++ apr_arch_dso.h 23 Nov 2003 20:33:09 -0000 1.2
@@ -69,6 +69,9 @@
struct apr_dso_handle_t {
image_id handle; /* Handle to the DSO loaded */
apr_pool_t *pool;
+ const char *errormsg; /* if the load fails, we have an error
+ * message here :)
+ */
};
#endif
1.25 +8 -5 apr/dso/beos/dso.c
Index: dso.c
===================================================================
RCS file: /home/cvs/apr/dso/beos/dso.c,v
retrieving revision 1.24
retrieving revision 1.25
diff -u -r1.24 -r1.25
--- dso.c 6 Jan 2003 23:44:16 -0000 1.24
+++ dso.c 23 Nov 2003 20:33:09 -0000 1.25
@@ -71,14 +71,17 @@
APR_DECLARE(apr_status_t) apr_dso_load(apr_dso_handle_t **res_handle,
const char *path, apr_pool_t *pool)
{
- image_id newid;
-
- if((newid = load_add_on(path)) < B_NO_ERROR)
- return APR_EDSOOPEN;
+ image_id newid = -1;
*res_handle = apr_pcalloc(pool, sizeof(*res_handle));
- (*res_handle)->handle = newid;
+
+ if((newid = load_add_on(path)) < B_NO_ERROR) {
+ (*res_handle)->errormsg = strerror(newid);
+ return APR_EDSOOPEN;
+ }
+
(*res_handle)->pool = pool;
+ (*res_handle)->handle = newid;
apr_pool_cleanup_register(pool, *res_handle, dso_cleanup, apr_pool_cleanup_null);