Opened 4 years ago

Closed 4 years ago

#18716 closed defect (fixed)

MEMAREA_ALIGN_MASK is wrong for MSVC on x64

Reported by: wbenny Owned by: nickm
Priority: Medium Milestone: Tor: 0.2.8.x-final
Component: Core Tor/Tor Version: Tor: 0.2.8.2-alpha
Severity: Normal Keywords: assert msvc x64 027-backport
Cc: Actual Points:
Parent ID: Points:
Reviewer: Sponsor:

Description

#define MEMAREA_ALIGN_MASK 7lu

change to:

#define MEMAREA_ALIGN_MASK 7llu

otherwise assert is thrown here:
memarea.c:128: tor_assert(realign_pointer(res->next_mem) == res->next_mem);

Child Tickets

Change History (7)

comment:1 Changed 4 years ago by wbenny

(pointer is truncated to 32bits)

comment:2 Changed 4 years ago by bugzilla

for MSVC? on x64? It's a LLP64 data model of Win64: https://blogs.msdn.microsoft.com/oldnewthing/20050131-00/?p=36563

comment:3 Changed 4 years ago by nickm

Keywords: 027-backport added
Milestone: Tor: 0.2.8.x-final
Status: newneeds_review

Possible better fix in branch bug18716_027. Needs review.

(Tagging for possible 0.2.7 backport, but not recommending it.)

comment:4 Changed 4 years ago by nickm

Owner: set to nickm
Status: needs_reviewaccepted

set owner.

comment:5 Changed 4 years ago by nickm

Status: acceptedneeds_review

comment:6 Changed 4 years ago by special

Status: needs_reviewmerge_ready

nickm's 39c057d45a67f9aa80bc05df85ec8deafdb6f46a looks good to me.

comment:7 Changed 4 years ago by nickm

Resolution: fixed
Status: merge_readyclosed

Merged!

Note: See TracTickets for help on using tickets.