| 264 | |
| 265 | |
| 266 | ISC_STATUS API_ROUTINE isc_array_put_slice(ISC_STATUS* status, |
| 267 | FB_API_HANDLE* db_handle, |
| 268 | FB_API_HANDLE* trans_handle, |
| 269 | ISC_QUAD* array_id, |
| 270 | const ISC_ARRAY_DESC* desc, |
| 271 | void* array, |
| 272 | SLONG* slice_length) |
| 273 | { |
| 274 | /************************************** |
| 275 | * |
| 276 | * i s c _ a r r a y _ p u t _ s l i c e |
| 277 | * |
| 278 | ************************************** |
| 279 | * |
| 280 | * Functional description |
| 281 | * |
| 282 | **************************************/ |
| 283 | UCHAR sdl_buffer[512]; |
| 284 | |
| 285 | SSHORT sdl_length = sizeof(sdl_buffer); |
| 286 | UCHAR* sdl = sdl_buffer; |
| 287 | |
| 288 | if (gen_sdl(status, desc, &sdl_length, &sdl, &sdl_length, true)) |
| 289 | return status[1]; |
| 290 | |
| 291 | isc_put_slice(status, db_handle, trans_handle, array_id, |
| 292 | sdl_length, reinterpret_cast<const char*>(sdl), |
| 293 | 0, NULL, *slice_length, array); |
| 294 | |
| 295 | if (sdl != sdl_buffer) |
| 296 | gds__free(sdl); |
| 297 | |
| 298 | return status[1]; |
| 299 | } |
| 300 | |
| 301 | |
| 302 | ISC_STATUS API_ROUTINE isc_array_set_desc(ISC_STATUS* status, |