mirror of
				https://github.com/RGBCube/serenity
				synced 2025-10-31 12:12:45 +00:00 
			
		
		
		
	LibJS: Remove Object(Object& prototype) footgun
This constructor was easily confused with a copy constructor, and it was possible to accidentally copy-construct Objects in at least one way that we dicovered (via generic ThrowCompletionOr construction). This patch adds a mandatory ConstructWithPrototypeTag parameter to the constructor to disambiguate it.
This commit is contained in:
		
							parent
							
								
									42b5c896e8
								
							
						
					
					
						commit
						4abdb68655
					
				
					 90 changed files with 100 additions and 99 deletions
				
			
		|  | @ -371,7 +371,7 @@ JS_DEFINE_NATIVE_FUNCTION(SheetGlobalObject::get_column_bound) | |||
| } | ||||
| 
 | ||||
| WorkbookObject::WorkbookObject(JS::Realm& realm, Workbook& workbook) | ||||
|     : JS::Object(*realm.intrinsics().object_prototype()) | ||||
|     : JS::Object(ConstructWithPrototypeTag::Tag, *realm.intrinsics().object_prototype()) | ||||
|     , m_workbook(workbook) | ||||
| { | ||||
| } | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Andreas Kling
						Andreas Kling