File tree Expand file tree Collapse file tree 1 file changed +15
-1
lines changed
Expand file tree Collapse file tree 1 file changed +15
-1
lines changed Original file line number Diff line number Diff line change @@ -1940,6 +1940,7 @@ void put_relation( burp_rel* relation)
19401940 burp_fld* unaligned = NULL;
19411941 burp_fld* aligned4 = NULL;
19421942 burp_fld* aligned8 = NULL;
1943+ burp_fld* aligned16 = NULL;
19431944
19441945 burp_fld* fields = get_fields(relation);
19451946
@@ -1951,7 +1952,13 @@ void put_relation( burp_rel* relation)
19511952 USHORT l = field->fld_length;
19521953 if (field->fld_type == blr_varying)
19531954 l += sizeof(USHORT);
1954- if (!(l & 7))
1955+
1956+ if (!(l & 15))
1957+ {
1958+ field->fld_next = aligned16;
1959+ aligned16 = field;
1960+ }
1961+ else if (!(l & 7))
19551962 {
19561963 field->fld_next = aligned8;
19571964 aligned8 = field;
@@ -2005,6 +2012,13 @@ void put_relation( burp_rel* relation)
20052012 relation->rel_fields = field;
20062013 }
20072014
2015+ while ((field = aligned16))
2016+ {
2017+ aligned16 = field->fld_next;
2018+ field->fld_next = relation->rel_fields;
2019+ relation->rel_fields = field;
2020+ }
2021+
20082022 // Now write the fields in what will become physical backup order
20092023
20102024 for (field = relation->rel_fields; field; field = field->fld_next)
You can’t perform that action at this time.
0 commit comments