struct _WapiScratchHeader *hdr;
gboolean success;
- _wapi_shared_data=_wapi_shm_attach (&success);
+ _wapi_shared_data=g_new0 (struct _WapiHandleShared_list *, 1);
+ _wapi_shared_scratch=g_new0 (struct _WapiHandleScratch, 1);
+
+ success=_wapi_shm_attach (&_wapi_shared_data[0], &_wapi_shared_scratch);
if(success==FALSE) {
g_error ("Failed to attach shared memory!");
exit (-1);
}
- hdr=(struct _WapiScratchHeader *)&_wapi_shared_data->scratch_base[0];
+ hdr=(struct _WapiScratchHeader *)&_wapi_shared_scratch->scratch_data;
if(hdr->flags==0 && hdr->length==0) {
g_print ("Scratch space unused\n");
exit (0);
}
- while(idx < _WAPI_SHM_SCRATCH_SIZE) {
- hdr=(struct _WapiScratchHeader *)&_wapi_shared_data->scratch_base[idx];
+ while(idx < _wapi_shared_scratch->data_len) {
+ hdr=(struct _WapiScratchHeader *)&_wapi_shared_scratch->scratch_data[idx];
if(hdr->flags & WAPI_SHM_SCRATCH_FREE) {
g_print ("Free block at %6d (index %6d), length %6d\n",
idx, idx+HDRSIZE, hdr->length);
} else {
- guchar *data=&_wapi_shared_data->scratch_base[idx+HDRSIZE];
+ guchar *data=&_wapi_shared_scratch->scratch_data[idx+HDRSIZE];
g_print ("Used block at %6d (index %6d), length %6d, [%s]\n",
idx, idx+HDRSIZE, hdr->length,