MCPcopy Create free account
hub / github.com/FirebirdSQL/firebird / API_ROUTINE isc_compile_request

Function API_ROUTINE isc_compile_request

src/yvalve/why.cpp:1883–1918  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1881
1882
1883ISC_STATUS API_ROUTINE isc_compile_request(ISC_STATUS* userStatus, isc_db_handle* dbHandle,
1884 isc_req_handle* reqHandle, ISC_USHORT blrLength, const ISC_SCHAR* blr)
1885{
1886 StatusVector status(userStatus);
1887 CheckStatusWrapper statusWrapper(&status);
1888 YRequest* request = NULL;
1889
1890 try
1891 {
1892 RefPtr<YAttachment> attachment(translateHandle(attachments, dbHandle));
1893
1894 nullCheck(reqHandle, isc_bad_stmt_handle);
1895
1896 request = attachment->compileRequest(&statusWrapper, blrLength,
1897 reinterpret_cast<const UCHAR*>(blr));
1898
1899 if (status.getState() & IStatus::STATE_ERRORS)
1900 return status[1];
1901
1902 *reqHandle = request->getHandle();
1903 }
1904 catch (const Exception& e)
1905 {
1906 if (request)
1907 {
1908 *reqHandle = 0;
1909 StatusVector temp(NULL);
1910 CheckStatusWrapper tempCheckStatusWrapper(&temp);
1911 request->free(&tempCheckStatusWrapper);
1912 }
1913
1914 e.stuffException(&statusWrapper);
1915 }
1916
1917 return status[1];
1918}
1919
1920
1921ISC_STATUS API_ROUTINE isc_compile_request2(ISC_STATUS* userStatus, isc_db_handle* dbHandle,

Callers

nothing calls this directly

Calls 7

translateHandleFunction · 0.85
nullCheckFunction · 0.85
compileRequestMethod · 0.45
getStateMethod · 0.45
getHandleMethod · 0.45
freeMethod · 0.45
stuffExceptionMethod · 0.45

Tested by

no test coverage detected