typo in idl parser; more pcrud debugging
authormiker <miker@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Mon, 15 Dec 2008 04:59:50 +0000 (04:59 +0000)
committermiker <miker@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Mon, 15 Dec 2008 04:59:50 +0000 (04:59 +0000)
git-svn-id: svn://svn.open-ils.org/ILS/trunk@11558 dcc99617-32d9-48b4-a31d-7c20da2025e4

Open-ILS/src/c-apps/oils_cstore.c
Open-ILS/src/c-apps/oils_idl-core.c

index 10e3d72..3028729 100644 (file)
@@ -918,9 +918,26 @@ static int verifyObjectPCRUD (  osrfMethodContext* ctx, const jsonObject* obj )
                    osrfLogDebug( OSRF_LOG_MARK, "Object not found in the database with primary key %s of %s", pkey, pkey_value );
                 jsonObjectFree(_tmp_params);
                 jsonObjectFree(_list);
+
+                growing_buffer* msg = buffer_init(128);
+                buffer_fadd(
+                    msg,
+                    "%s: no object found with primary key %s of %s",
+                    MODULENAME,
+                    pkey,
+                    pkey_value
+                );
+        
+                char* m = buffer_release(msg);
+                osrfAppSessionStatus( ctx->session, OSRF_STATUS_BADREQUEST, "osrfMethodException", ctx->request, m );
+        
+                free(m);
+                free(pkey_value);
+
                 return 0;
             }
 
+            free(pkey_value);
             jsonObjectFree(_tmp_params);
             jsonObjectFree(_list);
 
index 6ed594d..5c7a932 100644 (file)
@@ -321,7 +321,7 @@ osrfHash* oilsIDLInit( const char* idl_filename ) {
 
                                                        osrfStringArray* map = osrfNewStringArray(0);
                                                        string_tmp = NULL;
-                                                       if( (string_tmp = (char*)xmlGetProp(_l, BAD_CAST "permission") )) {
+                                                       if( (string_tmp = (char*)xmlGetProp(_a, BAD_CAST "permission") )) {
                                                                char* map_list = strdup( string_tmp );
                                                                osrfLogDebug(OSRF_LOG_MARK, "Permacrud permission list is %s", string_tmp );
        
@@ -338,11 +338,11 @@ osrfHash* oilsIDLInit( const char* idl_filename ) {
                                                        }
                                                        osrfHashSet( _tmp, map, "permission");
 
-                                               osrfHashSet( _tmp, (char*)xmlGetProp(_l, BAD_CAST "global_required"), "global_required");
+                                               osrfHashSet( _tmp, (char*)xmlGetProp(_a, BAD_CAST "global_required"), "global_required");
 
                                                        map = osrfNewStringArray(0);
                                                        string_tmp = NULL;
-                                                       if( (string_tmp = (char*)xmlGetProp(_l, BAD_CAST "context_field") )) {
+                                                       if( (string_tmp = (char*)xmlGetProp(_a, BAD_CAST "context_field") )) {
                                                                char* map_list = strdup( string_tmp );
                                                                osrfLogDebug(OSRF_LOG_MARK, "Permacrud context_field list is %s", string_tmp );
        
@@ -362,7 +362,7 @@ osrfHash* oilsIDLInit( const char* idl_filename ) {
                                                        osrfHash* foreign_context = osrfNewHash();
                                                        osrfHashSet( _tmp, foreign_context, "foreign_context");
 
-                                                       xmlNodePtr _f = _l->children;
+                                                       xmlNodePtr _f = _a->children;
 
                                                        while(_f) {
                                                                if ( strcmp( (char*)_f->name, "context" ) ) {