@@ -176,10 +176,20 @@ static void test_dbm(abts_case *tc, void *data)
176
176
const char * nofile = apr_pstrcat (p , "data/no-such-test-" , type , NULL );
177
177
178
178
rv = apr_dbm_open_ex (& db , type , file , APR_DBM_RWCREATE , APR_OS_DEFAULT , p );
179
- ABTS_INT_EQUAL (tc , APR_SUCCESS , rv );
180
179
181
- if (rv != APR_SUCCESS )
180
+ if (APR_STATUS_IS_EDSOOPEN (rv )) {
181
+ ABTS_SKIP (tc , data , "DBM DSO '%s' could not be opened." );
182
182
return ;
183
+ }
184
+
185
+ APR_ASSERT_SUCCESS (tc , "open database r/w" , rv );
186
+
187
+ if (APR_SUCCESS != rv ) {
188
+ char errbuf [128 ];
189
+ abts_log_message ("apr_dbm_open_ex() failed: %s: %s\n" , file ,
190
+ apr_strerror (rv , errbuf , sizeof (errbuf )));
191
+ return ;
192
+ }
183
193
184
194
table = generate_table ();
185
195
@@ -194,8 +204,12 @@ static void test_dbm(abts_case *tc, void *data)
194
204
rv = apr_dbm_open_ex (& db , type , file , APR_DBM_READONLY , APR_OS_DEFAULT , p );
195
205
ABTS_INT_EQUAL (tc , APR_SUCCESS , rv );
196
206
197
- if (rv != APR_SUCCESS )
207
+ if (APR_SUCCESS != rv ) {
208
+ char errbuf [128 ];
209
+ abts_log_message ("apr_dbm_open_ex() failed: %s: %s\n" , file ,
210
+ apr_strerror (rv , errbuf , sizeof (errbuf )));
198
211
return ;
212
+ }
199
213
200
214
test_dbm_exists (tc , db , table );
201
215
test_dbm_traversal (tc , db , table );
0 commit comments