diff --git a/libIRDB/src/core/fileir.cpp b/libIRDB/src/core/fileir.cpp
index 36ab16220588b0b39fed812ab6f80d963c0345f5..56418667ce46bd59536f98d5e09da99ac22266ac 100644
--- a/libIRDB/src/core/fileir.cpp
+++ b/libIRDB/src/core/fileir.cpp
@@ -429,7 +429,10 @@ std::map<db_id_t,Instruction_t*> FileIR_t::ReadInsnsFromDB
 			data, callback, comment, indTarg, doipid);
 	
 		if(funcMap[parent_func_id])
+		{
 			funcMap[parent_func_id]->GetInstructions().insert(newinsn);
+			newinsn->SetFunction(funcMap[parent_func_id]);
+		}
 
 //std::cout<<"Found address "<<aid<<"."<<std::endl;