# ReactOS Loader Rewrite Addresses DLL Loading and Dependency Bugs

DevFeed: [ReactOS Loader Rewrite Addresses DLL Loading and Dependency Bugs](<https://devfeed.tech/articles/newsletter-84-32950.md>)

Original publisher: [Read original article](<https://reactos.org/blogs/newsletter-84/>)

Published: 2011-05-15T00:00:00Z

Content type: news

Language: en

Sources: [Front Page on ReactOS Website](<https://devfeed.tech/sources/front-page-on-reactos-website.md>)

Topics: [ReactOS](<https://devfeed.tech/topics/reactos.md>), [Code](<https://devfeed.tech/topics/code.md>), [implementation](<https://devfeed.tech/topics/implementation.md>), [debugging](<https://devfeed.tech/topics/debugging.md>), [Development](<https://devfeed.tech/topics/development.md>)

Tags: [bug](<https://devfeed.tech/tags/bug.md>), [code](<https://devfeed.tech/tags/code.md>), [debugging](<https://devfeed.tech/tags/debugging.md>), [development](<https://devfeed.tech/tags/development.md>), [free](<https://devfeed.tech/tags/free.md>), [implementation](<https://devfeed.tech/tags/implementation.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [os](<https://devfeed.tech/tags/os.md>), [react](<https://devfeed.tech/tags/react.md>), [reactos](<https://devfeed.tech/tags/reactos.md>), [win32](<https://devfeed.tech/tags/win32.md>), [winapi](<https://devfeed.tech/tags/winapi.md>)

## AI overview

This newsletter reports on a ReactOS loader rewrite intended to improve DLL loading, initialization, dependency ordering, and handling of circular dependencies. The work spans the memory manager, NTDLL, and kernel32, with debugging still ongoing.

## Source excerpt

Loader Rewrite When an application has external dependencies that are in DLLs, a loader is responsible for loading and initializing them. The implementation in ReactOS is very, very old and like many such instances of ancient code incorrect. It worked after a fashion but took many shortcuts. There are matters such as initialization of the Thread Local Storage, calling the DllMain of a specific DLL, and loading of DLLs in the correct order based on interdependencies or even circular dependencies.