8
0
mirror of https://github.com/FirebirdSQL/firebird.git synced 2025-01-22 22:43:03 +01:00

Attempt to fix bug #7428 : Problem with editing procedures being in use.

Backported part of commit 760d4b13
This commit is contained in:
Vlad Khorsun 2023-01-20 21:27:45 +02:00
parent be7609bc26
commit d9d57ea711

View File

@ -843,10 +843,14 @@ dsql_udf* METD_get_function(jrd_tra* transaction, DsqlCompilerScratch* dsqlScrat
if (MET_dsql_cache_use(tdbb, SYM_udf, metaName.identifier, metaName.package))
userFunc->udf_flags |= UDF_dropped;
return userFunc;
}
if (userFunc && (userFunc->udf_flags & UDF_dropped))
userFunc = nullptr;
if (userFunc)
return userFunc;
// Now see if it is in the database
USHORT return_arg = 0;
@ -1204,10 +1208,14 @@ dsql_prc* METD_get_procedure(jrd_tra* transaction, DsqlCompilerScratch* dsqlScra
if (MET_dsql_cache_use(tdbb, SYM_procedure, metaName.identifier, metaName.package))
procedure->prc_flags |= PRC_dropped;
return procedure;
}
if (procedure && (procedure->prc_flags & PRC_dropped))
procedure = nullptr;
if (procedure)
return procedure;
// now see if it is in the database
while (!procedure)