[Bug 49225] FreeBSD "regression" causes assertion failure in (at least) applications using Gecko plugin

WineHQ Bugzilla wine-bugs at winehq.org
Sat May 23 01:13:05 CDT 2020


https://bugs.winehq.org/show_bug.cgi?id=49225

--- Comment #3 from Damjan Jovanovic <damjan.jov at gmail.com> ---
It seems that create_view() is called after the memory is allocated by another
function such as map_view(), in order to store the mapping. Thus if there is a
range collision, it is a serious problem, because memory was allocated when it
shouldn't have been.

Where is create_view called from and why?

create_view()
  map_view()
    allocate_dos_memory()
    map_image()
    virtual_map_section()
    virtual_alloc_thread_stack()
    virtual_alloc()
  allocate_dos_memory()
    virtual_alloc()
    NtAllocateVirtualMemory()
      virtual_alloc_first_teb()
        ...
      virtual_alloc_teb()
        ...
      ...
  virtual_create_builtin_view()
    ...
  virtual_alloc_thread_stack()
    RtlCreateUserStack()
    ...

That's a lot of searching. Let's assume the view got the right range
previously, and only the call which results in the overlapping range is wrong.
Where did that call come from?

-- 
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.



More information about the wine-bugs mailing list