Files
fail/core/SAL/bochs/Credits.ah

30 lines
605 B
Plaintext

#ifndef __CREDITS_AH__
#define __CREDITS_AH__
#include <string.h>
#include <stdio.h>
aspect Credits {
bool first;
Credits() : first(true) {}
advice call ("% bx_center_print(...)")
&& within ("void bx_print_header()")
&& args(file, line, maxwidth)
: around (FILE *file, const char *line, unsigned maxwidth)
{
if (!first) {
tjp->proceed();
return;
}
// FIXME take version from global configuration
char buf[256] = "FailBochs 0.0.1, based on the ";
strncat(buf, line, 128);
first = false;
*(tjp->arg<1>()) = buf;
tjp->proceed();
}
};
#endif // __CREDITS_AH__