summaryrefslogtreecommitdiffstats
path: root/ppapi/api/pp_errors.idl
blob: fc0ff4a2ad8ff00bca8540b103c5bbdb754332bd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
/* Copyright (c) 2012 The Chromium Authors. All rights reserved.
 * Use of this source code is governed by a BSD-style license that can be
 * found in the LICENSE file.
 */

/**
 * This file defines an enumeration of all PPAPI error codes.
 */

/**
 * This enumeration contains enumerators of all PPAPI error codes.
 *
 * Errors are negative valued. Callers should treat all negative values as a
 * failure, even if it's not in the list, since the possible errors are likely
 * to expand and change over time.
 */
[unnamed] enum PP_Error {
  /**
   * This value is returned by a function on successful synchronous completion
   * or is passed as a result to a PP_CompletionCallback_Func on successful
   * asynchronous completion.
   */
  PP_OK                   = 0,
  /**
   * This value is returned by a function that accepts a PP_CompletionCallback
   * and cannot complete synchronously. This code indicates that the given
   * callback will be asynchronously notified of the final result once it is
   * available.
   */
  PP_OK_COMPLETIONPENDING = -1,

  /**This value indicates failure for unspecified reasons. */
  PP_ERROR_FAILED         = -2,

  /**
   * This value indicates failure due to an asynchronous operation being
   * interrupted. The most common cause of this error code is destroying a
   * resource that still has a callback pending. All callbacks are guaranteed
   * to execute, so any callbacks pending on a destroyed resource will be
   * issued with PP_ERROR_ABORTED.
   *
   * If you get an aborted notification that you aren't expecting, check to
   * make sure that the resource you're using is still in scope. A common
   * mistake is to create a resource on the stack, which will destroy the
   * resource as soon as the function returns.
   */
  PP_ERROR_ABORTED        = -3,

  /** This value indicates failure due to an invalid argument. */
  PP_ERROR_BADARGUMENT    = -4,

  /** This value indicates failure due to an invalid PP_Resource. */
  PP_ERROR_BADRESOURCE    = -5,

  /** This value indicates failure due to an unavailable PPAPI interface. */
  PP_ERROR_NOINTERFACE    = -6,

  /** This value indicates failure due to insufficient privileges. */
  PP_ERROR_NOACCESS       = -7,

  /** This value indicates failure due to insufficient memory. */
  PP_ERROR_NOMEMORY       = -8,

  /** This value indicates failure due to insufficient storage space. */
  PP_ERROR_NOSPACE        = -9,

  /** This value indicates failure due to insufficient storage quota. */
  PP_ERROR_NOQUOTA        = -10,

  /**
   * This value indicates failure due to an action already being in
   * progress.
   */
  PP_ERROR_INPROGRESS     = -11,
  /** This value indicates failure due to a file that does not exist. */

  /**
   * The requested command is not supported by the browser.
   */
  PP_ERROR_NOTSUPPORTED = -12,

  /**
   * Returned if you try to use a null completion callback to "block until
   * complete" on the main thread. Blocking the main thread is not permitted
   * to keep the browser responsive (otherwise, you may not be able to handle
   * input events, and there are reentrancy and deadlock issues).
   *
   * The goal is to provide blocking calls from background threads, but PPAPI
   * calls on background threads are not currently supported. Until this
   * support is complete, you must either do asynchronous operations on the
   * main thread, or provide an adaptor for a blocking background thread to
   * execute the operaitions on the main thread.
   */
  PP_ERROR_BLOCKS_MAIN_THREAD = -13,

  PP_ERROR_FILENOTFOUND   = -20,
  /** This value indicates failure due to a file that already exists. */
  PP_ERROR_FILEEXISTS     = -21,
  /** This value indicates failure due to a file that is too big. */
  PP_ERROR_FILETOOBIG     = -22,
  /**
   * This value indicates failure due to a file having been modified
   * unexpectedly.
   */
  PP_ERROR_FILECHANGED    = -23,
  /** This value indicates failure due to a time limit being exceeded. */
  PP_ERROR_TIMEDOUT       = -30,
  /**
   * This value indicates that the user cancelled rather than providing
   * expected input.
   */
  PP_ERROR_USERCANCEL     = -40,
  /**
   * This value indicates failure due to lack of a user gesture such as a
   * mouse click or key input event. Examples of actions requiring a user
   * gesture are showing the file chooser dialog and going into fullscreen
   * mode.
   */
  PP_ERROR_NO_USER_GESTURE = -41,
  /**
   * This value indicates that the graphics context was lost due to a
   * power management event.
   */
  PP_ERROR_CONTEXT_LOST   = -50,
  /**
   * Indicates an attempt to make a PPAPI call on a thread without previously
   * registering a message loop via PPB_MessageLoop.AttachToCurrentThread.
   * Without this registration step, no PPAPI calls are supported.
   */
  PP_ERROR_NO_MESSAGE_LOOP = -51,
  /**
   * Indicates that the requested operation is not permitted on the current
   * thread.
   */
  PP_ERROR_WRONG_THREAD   = -52
};