Closed Bug 664368 Opened 13 years ago Closed 6 years ago

mozilla::ipc::SharedMemory doesn't have interoperability on 32-bit process vs 64-bit process

Categories

(Core :: IPC, defect)

x86_64
Windows Vista
defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: m_kato, Assigned: m_kato)

References

Details

Attachments

(1 file)

No description provided.
Assignee: nobody → m_kato
Status: NEW → ASSIGNED
Attached patch fix v1 (deleted) — Splinter Review
What's the error you're trying to fix? Although these messages use size_t, the size of which is platform-specific, we always serialize it as a 64-bit integer and check that it fits in the platform-specific size. Josh added that code. (I'm not necessarily against changing the messages here, I just want to make sure you're not spending time that could better be used elsewhere.)
(In reply to comment #2) > What's the error you're trying to fix? Although these messages use size_t, > the size of which is platform-specific, we always serialize it as a 64-bit > integer and check that it fits in the platform-specific size. Josh added > that code. (I'm not necessarily against changing the messages here, I just > want to make sure you're not spending time that could better be used > elsewhere.) Before fixing bug 620888. size_t was compatible both x86 and x64. But, before fixing it, ReadParam(uint32) wasn't compatible on MSVC.
Also should I backout bug 620888, then should I add fix to extract ReadParam(uint32) to ReadParam(uint64) on Win64 platform? If backouting bug 620888 on Win32, ReadParam(uint32) becomes readParam(intptr_t) on IPC.

This should be fixed as of bug 1525813; the GMP protocol uses shared memory and it now works between arm64 and x86 processes on Windows.

Status: ASSIGNED → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: