Bad use of BitmapFillStyle and
FormCanvas>>fillRectangle:fillStyle:?
Ken Causey
ken at kencausey.com
Wed Apr 21 21:48:43 UTC 2004
Examination with gdb indicates that it is returning 0 based on the
returned value of interpreterProxy->failed() at the point indicated
below.
Anyone care to help me figure out what that means?
Ken
EXPORT(int) primitiveAddBitmapFill(void) {
int cmOop;
int dirOop;
int originOop;
int tileFlag;
int formOop;
int fill;
int xIndex;
int nrmOop;
if (!((interpreterProxy->methodArgumentCount()) == 7)) {
return interpreterProxy->primitiveFail();
}
xIndex = interpreterProxy->stackIntegerValue(0);
if (xIndex <= 0) {
return interpreterProxy->primitiveFail();
}
nrmOop = interpreterProxy->stackObjectValue(1);
dirOop = interpreterProxy->stackObjectValue(2);
originOop = interpreterProxy->stackObjectValue(3);
tileFlag =
interpreterProxy->booleanValueOf(interpreterProxy->stackValue(4));
if (tileFlag) {
tileFlag = 1;
} else {
tileFlag = 0;
}
cmOop = interpreterProxy->stackObjectValue(5);
formOop = interpreterProxy->stackObjectValue(6);
if (interpreterProxy->failed()) {
return null;
}
if
(!(quickLoadEngineFromrequiredState(interpreterProxy->stackObjectValue(7), GEStateUnlocked))) {
return interpreterProxy->primitiveFail();
}
loadPointfrom(((int *) (workBuffer + GWPoint1)), originOop);
loadPointfrom(((int *) (workBuffer + GWPoint2)), dirOop);
loadPointfrom(((int *) (workBuffer + GWPoint3)), nrmOop);
if (interpreterProxy->failed()) {
----> return 0;
}
fill = loadBitmapFillcolormaptilefromalongnormalxIndex(formOop, cmOop,
tileFlag, ((int *) (workBuffer + GWPoint1)), ((int *) (workBuffer +
GWPoint2)), ((int *) (workBuffer + GWPoint3)), xIndex - 1);
if (engineStopped) {
return interpreterProxy->primitiveFail();
}
if (!(interpreterProxy->failed())) {
/* begin storeEngineStateInto: */
workBuffer[GWObjUsed] = objUsed;
interpreterProxy->pop(8);
interpreterProxy->push(interpreterProxy->positive32BitIntegerFor(fill));
}
}
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
Url : http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20040421/1270d9f6/attachment.pgp
More information about the Squeak-dev
mailing list
|