mirror of
https://github.com/MariaDB/server.git
synced 2026-05-04 14:15:33 +02:00
Windows fix to avoid VC++ 6.0 compiler bug, which prevents compilation when function calls are present inside an expanded inline function
innobase/fsp/fsp0fsp.c: Added seperate error message to avoid VC++ 6.0 compiler bug
This commit is contained in:
parent
3fae965102
commit
a4caa4cc57
1 changed files with 31 additions and 2 deletions
|
|
@ -2656,7 +2656,13 @@ fseg_free_page_low(
|
|||
ulint not_full_n_used;
|
||||
ulint state;
|
||||
ulint i;
|
||||
char errbuf[200];
|
||||
char errbuf[200];
|
||||
|
||||
#ifdef __WIN__
|
||||
dulint desm;
|
||||
dulint segm;
|
||||
#endif
|
||||
|
||||
|
||||
ut_ad(seg_inode && mtr);
|
||||
ut_ad(mach_read_from_4(seg_inode + FSEG_MAGIC_N) ==
|
||||
|
|
@ -2736,7 +2742,10 @@ fseg_free_page_low(
|
|||
fprintf(stderr,
|
||||
"InnoDB: Dump of the segment inode: %s\n", errbuf);
|
||||
|
||||
fprintf(stderr,
|
||||
|
||||
#ifndef __WIN__
|
||||
|
||||
fprintf(stderr,
|
||||
"InnoDB: Serious error: InnoDB is trying to free space %lu page %lu,\n"
|
||||
"InnoDB: which does not belong to segment %lu %lu but belongs\n"
|
||||
"InnoDB: to segment %lu %lu.\n",
|
||||
|
|
@ -2750,6 +2759,26 @@ fseg_free_page_low(
|
|||
ut_dulint_get_low(
|
||||
mtr_read_dulint(seg_inode + FSEG_ID, MLOG_8BYTES, mtr)));
|
||||
|
||||
#else
|
||||
|
||||
/* More pedantic usage to avoid VC++ 6.0 compiler errors due to inline
|
||||
function expansion issues */
|
||||
|
||||
desm = mtr_read_dulint(descr + XDES_ID, MLOG_8BYTES, mtr);
|
||||
segm = mtr_read_dulint(seg_inode + FSEG_ID, MLOG_8BYTES, mtr);
|
||||
|
||||
fprintf(stderr,
|
||||
"InnoDB: Serious error: InnoDB is trying to free space %lu page %lu,\n"
|
||||
"InnoDB: which does not belong to segment %lu %lu but belongs\n"
|
||||
"InnoDB: to segment %lu %lu.\n",
|
||||
space, page,
|
||||
ut_dulint_get_high(desm),
|
||||
ut_dulint_get_low(desm),
|
||||
ut_dulint_get_high(segm),
|
||||
ut_dulint_get_low(segm));
|
||||
|
||||
#endif
|
||||
|
||||
fprintf(stderr,
|
||||
"InnoDB: If the InnoDB recovery crashes here, see section 6.1\n"
|
||||
"InnoDB: of http://www.innodb.com/ibman.html about forcing recovery.\n");
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue