| Line 1518... |
Line 1518... |
| 1518 |
PROTECT(retval = do_External(call, op, args, env));
|
1518 |
PROTECT(retval = do_External(call, op, args, env));
|
| 1519 |
/*
|
1519 |
/*
|
| 1520 |
* If there is an error or user-interrupt in the above
|
1520 |
* If there is an error or user-interrupt in the above
|
| 1521 |
* evaluation, dd->recordGraphics is set to TRUE
|
1521 |
* evaluation, dd->recordGraphics is set to TRUE
|
| 1522 |
* on all graphics devices (see GEonExit(); called in errors.c)
|
1522 |
* on all graphics devices (see GEonExit(); called in errors.c)
|
| - |
|
1523 |
*
|
| - |
|
1524 |
* NOTE: if someone uses try() around this call and there
|
| - |
|
1525 |
* is an error, then dd->recordGraphics stays FALSE, so
|
| - |
|
1526 |
* subsequent pages of graphics output are NOT saved on
|
| - |
|
1527 |
* the display list. A workaround is to deliberately
|
| - |
|
1528 |
* force an error in a graphics call (e.g., a grid popViewport()
|
| - |
|
1529 |
* while in the ROOT viewport) which will reset dd->recordGraphics
|
| - |
|
1530 |
* to TRUE as per the comment above.
|
| 1523 |
*/
|
1531 |
*/
|
| 1524 |
dd->recordGraphics = record;
|
1532 |
dd->recordGraphics = record;
|
| 1525 |
if (GErecording(call, dd)) {
|
1533 |
if (GErecording(call, dd)) {
|
| 1526 |
if (!GEcheckState(dd))
|
1534 |
if (!GEcheckState(dd))
|
| 1527 |
errorcall(call, _("Invalid graphics state"));
|
1535 |
errorcall(call, _("Invalid graphics state"));
|
| Line 1540... |
Line 1548... |
| 1540 |
PROTECT(retval = do_dotcall(call, op, args, env));
|
1548 |
PROTECT(retval = do_dotcall(call, op, args, env));
|
| 1541 |
/*
|
1549 |
/*
|
| 1542 |
* If there is an error or user-interrupt in the above
|
1550 |
* If there is an error or user-interrupt in the above
|
| 1543 |
* evaluation, dd->recordGraphics is set to TRUE
|
1551 |
* evaluation, dd->recordGraphics is set to TRUE
|
| 1544 |
* on all graphics devices (see GEonExit(); called in errors.c)
|
1552 |
* on all graphics devices (see GEonExit(); called in errors.c)
|
| - |
|
1553 |
*
|
| - |
|
1554 |
* NOTE: if someone uses try() around this call and there
|
| - |
|
1555 |
* is an error, then dd->recordGraphics stays FALSE, so
|
| - |
|
1556 |
* subsequent pages of graphics output are NOT saved on
|
| - |
|
1557 |
* the display list. A workaround is to deliberately
|
| - |
|
1558 |
* force an error in a graphics call (e.g., a grid popViewport()
|
| - |
|
1559 |
* while in the ROOT viewport) which will reset dd->recordGraphics
|
| - |
|
1560 |
* to TRUE as per the comment above.
|
| 1545 |
*/
|
1561 |
*/
|
| 1546 |
dd->recordGraphics = record;
|
1562 |
dd->recordGraphics = record;
|
| 1547 |
if (GErecording(call, dd)) {
|
1563 |
if (GErecording(call, dd)) {
|
| 1548 |
if (!GEcheckState(dd))
|
1564 |
if (!GEcheckState(dd))
|
| 1549 |
errorcall(call, _("Invalid graphics state"));
|
1565 |
errorcall(call, _("Invalid graphics state"));
|