annotate libtests/0001/prog1.c @ 508:23c47e118bc6
Better soap memory correctness.
Pass the struct soap down through audioDB::query into Reporter::report
methods.
We go through the audioDB constructor and do everything on the stack.
We'll eventually also need to add a pointer member within the audioDB
object, so that non-local transfers of control (particularly
audioDB::error) can still allocate soap-specific memory.
Then use soap_malloc() not new[] for memory allocation of
adbQueryResponse data structures.
author |
mas01cr |
date |
Tue, 13 Jan 2009 21:37:14 +0000 |
parents |
342822c2d49a |
children |
|
rev |
line source |
mas01cr@498
|
1 #include "audioDB_API.h"
|
mas01cr@498
|
2 #include "test_utils_lib.h"
|
mas01ik@355
|
3
|
mas01cr@498
|
4 int main(int argc, char **argv) {
|
mas01cr@498
|
5 adb_t *adb;
|
mas01cr@498
|
6 struct stat st;
|
mas01ik@355
|
7
|
mas01cr@498
|
8 clean_remove_db(TESTDB);
|
mas01ik@355
|
9
|
mas01cr@498
|
10 adb = audiodb_open(TESTDB, O_RDWR);
|
mas01cr@498
|
11 if(adb)
|
mas01cr@498
|
12 return 1;
|
mas01ik@355
|
13
|
mas01cr@498
|
14 adb = audiodb_create(TESTDB, 0, 0, 0);
|
mas01cr@498
|
15 if (!adb)
|
mas01cr@498
|
16 return 1;
|
mas01ik@355
|
17
|
mas01cr@498
|
18 if(stat(TESTDB, &st))
|
mas01cr@498
|
19 return 1;
|
mas01ik@355
|
20
|
mas01cr@498
|
21 audiodb_close(adb);
|
mas01ik@355
|
22
|
mas01cr@498
|
23 adb = audiodb_create(TESTDB, 0, 0, 0);
|
mas01cr@498
|
24 if(adb)
|
mas01cr@498
|
25 return 1;
|
mas01ik@355
|
26
|
mas01cr@498
|
27 adb = audiodb_open(TESTDB, O_RDONLY);
|
mas01cr@498
|
28 if (!adb)
|
mas01cr@498
|
29 return 1;
|
mas01ik@355
|
30
|
mas01cr@498
|
31 audiodb_close(adb);
|
mas01ik@355
|
32
|
mas01cr@498
|
33 return 104;
|
mas01ik@355
|
34 }
|