@@ -86,9 +86,9 @@ class BasicBlockAnalysisContext:
8686 _translate_tail_calls : bool
8787 _disallow_branch_to_string : bool
8888 _max_function_size : int
89- _max_size_reached : bool
9089
9190 # In/Out
91+ _max_size_reached : bool
9292 _contextual_returns : Dict ["function.ArchAndAddr" , bool ]
9393
9494 # Out
@@ -231,6 +231,17 @@ def max_size_reached(self) -> bool:
231231
232232 return self ._max_size_reached
233233
234+ @max_size_reached .setter
235+ def max_size_reached (self , value : bool ) -> None :
236+ """Set boolean that indicates if the maximum function size has been reached.
237+
238+ :param bool value: The new value for max_size_reached
239+ """
240+ if not isinstance (value , bool ):
241+ raise TypeError ("value must be a boolean" )
242+
243+ self ._max_size_reached = value
244+
234245 @property
235246 def contextual_returns (self ) -> Dict ["function.ArchAndAddr" , bool ]:
236247 """Get the mapping of contextual function return locations to their values."""
@@ -387,6 +398,7 @@ def finalize(self) -> None:
387398 halted_addresses [i ].address = loc .addr
388399 core .BNAnalyzeBasicBlocksContextSetHaltedDisassemblyAddresses (self ._handle , halted_addresses , total )
389400
401+ self ._handle .maxSizeReached = ctypes .c_bool (self ._max_size_reached )
390402 if self ._contextual_returns_dirty :
391403 total = len (self ._contextual_returns )
392404 values = (ctypes .c_bool * total )()
0 commit comments