You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@apr.apache.org by mt...@apache.org on 2009/02/15 08:43:44 UTC
svn commit: r744622 - in /apr/apr/trunk/poll/unix: pollcb.c pollset.c
Author: mturk
Date: Sun Feb 15 07:43:44 2009
New Revision: 744622
URL: http://svn.apache.org/viewvc?rev=744622&view=rev
Log:
Always set return object pointer to NULL if create failed.
Modified:
apr/apr/trunk/poll/unix/pollcb.c
apr/apr/trunk/poll/unix/pollset.c
Modified: apr/apr/trunk/poll/unix/pollcb.c
URL: http://svn.apache.org/viewvc/apr/apr/trunk/poll/unix/pollcb.c?rev=744622&r1=744621&r2=744622&view=diff
==============================================================================
--- apr/apr/trunk/poll/unix/pollcb.c (original)
+++ apr/apr/trunk/poll/unix/pollcb.c Sun Feb 15 07:43:44 2009
@@ -108,8 +108,10 @@
}
/* Try with default provider */
provider = pollcb_provider(pollset_default_method);
- if (!provider)
+ if (!provider) {
+ *pollcb = NULL;
return APR_ENOTIMPL;
+ }
rv = (*provider->create)(*pollcb, size, p, flags);
if (rv != APR_SUCCESS) {
*pollcb = NULL;
Modified: apr/apr/trunk/poll/unix/pollset.c
URL: http://svn.apache.org/viewvc/apr/apr/trunk/poll/unix/pollset.c?rev=744622&r1=744621&r2=744622&view=diff
==============================================================================
--- apr/apr/trunk/poll/unix/pollset.c (original)
+++ apr/apr/trunk/poll/unix/pollset.c Sun Feb 15 07:43:44 2009
@@ -201,6 +201,7 @@
while (provider == NULL) {
provider = pollset_provider(method);
if (!provider) {
+ *pollset = NULL;
if ((flags & APR_POLLSET_NODEFAULT) == APR_POLLSET_NODEFAULT)
return APR_ENOTIMPL;
if (method == pollset_default_method)
@@ -226,9 +227,11 @@
*pollset = NULL;
return rv;
}
- provider = pollset_provider(method);
- if (!provider)
+ provider = pollset_provider(pollset_default_method);
+ if (!provider) {
+ *pollset = NULL;
return APR_ENOTIMPL;
+ }
rv = (*provider->create)(*pollset, size, p, flags);
if (rv != APR_SUCCESS) {
*pollset = NULL;