Hallvard,
This also works. My naive approach was due to working out what the issue was with the original assigment and then trying to determine which members were not aligned correctly.
Thanks, Roy Keene
On Fri, 2 Mar 2012, Hallvard B Furuseth wrote:
On Fri, 2 Mar 2012 08:03:00 GMT, roy.keene@us.army.mil wrote:
Breaking the assignment into an assignment of its members and using the existing COPY_PGNO() alleviates this fault.
memcpy would be simpler, if it is 'db' which is unaligned. Try this instead.
--- mdb.c~ 2012-03-02 11:23:21 +++ mdb.c 2012-03-02 11:25:06 @@ -4699,4 +4699,3 @@ mdb_xcursor_init1(MDB_cursor *mc, MDB_no if (node->mn_flags & F_SUBDATA) {
MDB_db *db = NODEDATA(node);
mx->mx_db = *db;
mx->mx_cursor.mc_snum = 0;memcpy(&mx->mx_db, NODEDATA(node), sizeof(MDB_db));