---
name: "XpCancelDoc"
section: "3"
platform: "linux"
package: "libxp"
version: "1.0.4-3"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/XpCancelDoc"
---

# XpCancelDoc(3)

Cancels a print document.

## NAME

XpCancelDoc -  Cancels a print document.

## SYNOPSIS

**void XpCancelDoc** ( *display,* *discard* )\
\
       Display \**display*;\
\
       Bool *discard*;

## ARGUMENTS

- *display*

  Specifies a pointer to the Display structure; returned from XOpenDisplay.

- *discard*

  When TRUE, specifies that all XPPrintNotify events with a detail of XPEndPageNotify or XPEndDocNotify should be discarded.

## DESCRIPTION

XpCancelDoc cancels an in-progress document. If the job was started with output\_mode XPGetData then the data stream to XpGetDocumentData is interrupted; no further data for the current document will be generated but data for subsequent documents can be generated. For many page description languages such arbitrary termination may invalidate the output.

If the job was started with output\_mode XPSpool then depending on the driver and spooler implementation the entire document may be canceled or a partial document may be generated.

If *discard* is True all XPPrintNotify events with a detail field of XPEndPageNotify or XPEndDocNotify are discarded before XpCancelDoc returns.

For clients selecting XPPrintMask (see XpSelectInput), the event XPPrintNotify will be generated with its detail field set to XPEndDocNotify.

## DIAGNOSTICS

- XPBadContext

  A valid print context-id has not been set prior to making this call.

- XPBadSequence

  The function was not called in the proper order with respect to the other X Print Service Extension calls (example, XpEndDoc prior to XpStartDoc).

## SEE ALSO

**XpEndDoc**(3Xp), **XpGetDocumentData**(3Xp), **XpSelectInput**(3Xp), **XpStartDoc**(3Xp)
