Recurring access violation in Adobe AIR.dll at +0x7444ee on AIR 51.1.3.8 (NULL 16-bit write) — looking for help identifying the function
#4221
Unanswered
dominicseo-nsuslab
asked this question in
Q&A
Replies: 1 comment 5 replies
|
Hi Thanks for all the details. We can investigate - but the quickest option is probably if we are able to share the mini dump file? An upload link for this is: many thanks |
5 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Hello AIR team,
We're seeing a recurring native access violation inside
Adobe AIR.dllon AIR 51.1.3.8 (Windows x64, captive runtime) in our production desktop application. We have a full-memory minidump and have done basic analysis, but since public PDBs aren't available we can't tell which function is faulting. We'd really appreciate your help mapping the offset to a function name, and any insight into whether this is a known issue in the 51.x line.What we're seeing
Our application is a captive AIR x64 desktop app running on Windows 11 (build 26100). The runtime is
Adobe AIR.dllversion 51.1.3.8 (the file has the Pre-release flag set). The faulting process had been running for about 23 seconds when it crashed, on the main thread (thread 0), with the runtime hosting roughly 234 threads at the time.The exception itself is a write access violation to a NULL address:
We mention
FRETrace + 0x3e7eonly because it's the closest exported symbol — we're confident the crash isn't actually insideFRETrace, but we don't have the private PDB to resolve it any further.The faulting instruction and nearby code
The crash happens on a 16-bit indexed write where both the base pointer and the index are zero:
Surrounding code (a few instructions before and after the fault):
The pattern looks like an indexed write into a buffer that's reached via a pointer table — the table is loaded from
[r14+0x38], the i-th entry's pointer field is dereferenced intorcx, and that pointer comes back NULL.Register state at the fault:
Call stack
The thread 0 stack at the time of the crash, with
FRETrace-relative offsets shown where they exist:The bottom two frames are not in any loaded module — they look like JIT-compiled AS3 bytecode (the address range matches what we usually see for the AVM2 JIT region). So the crash flow appears to be: AS3 code → AVM2 entry → several internal AIR runtime calls → fault.
Why we think it isn't a single AS3 bug
This isn't a one-user, one-code-path issue. We've observed the same fault signature reproduce across many different users, and on our side the AS3 code paths immediately preceding the crash vary quite a bit — sometimes a UI event handler is running, sometimes a server response handler, sometimes the user has just been idle on a screen and a periodic timer fired. We have one user who crashes reproducibly across multiple sessions, but each time the AS3 trigger differs.
The interval between "last activity on the AS3 side" and the abnormal process termination is consistently small — usually within a few milliseconds — which suggests the fault happens synchronously, at or just after returning to the AIR runtime from AS3.
Because of the variety of AS3 code paths involved and the small native call stack above the fault, our best guess is that this is something at the runtime level rather than in any one of our handlers — but we're not able to confirm that without knowing what the faulting function is.
What we'd love your help with
Adobe AIR.dll51.1.3.8 contains the instruction at RVA 0x7444ee? Knowing whether this is in AVM2 string handling, Stage3D resource upload, glyph rasterization, or somewhere else would help us a lot in narrowing things down on our side.We're happy to share the minidump privately if that helps. We can also provide loaded-module info, full per-thread stacks, and the raw debugger output for the exception context.
Thanks very much for any help you can give us. Happy to provide more detail on anything above.
All reactions