当前位置: 首页>>代码示例>>C++>>正文


C++ clear_error函数代码示例

本文整理汇总了C++中clear_error函数的典型用法代码示例。如果您正苦于以下问题:C++ clear_error函数的具体用法?C++ clear_error怎么用?C++ clear_error使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了clear_error函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: run_remote

static int run_remote(int fd, const char *command)
{
	fflush(stdout);

	if (!ctl_send_chars(fd, command, -1)) {
		printf("\r[%sFAIL%s]\n", c(RED, use_colors), c(CLEAR, use_colors));
		return COMMAND_FAILED;
	}

	struct luadebug_user *readline_user = luadebug_user_readline();
	if (!readline_user) {
		printf(": %ls", clear_error());
		printf("\r[%sFAIL%s]\n", c(RED, use_colors), c(CLEAR, use_colors));
	}

	if (check_status(fd, NULL) == COMMAND_SUCCESS) {
		luadebug_user_remote_server(fd, readline_user);
		if (check_error()) {
			message(HAKA_LOG_FATAL, L"debug", clear_error());
			return COMMAND_FAILED;
		}
		return COMMAND_SUCCESS;
	}
	else {
		return COMMAND_FAILED;
	}
}
开发者ID:Oneiroi,项目名称:haka,代码行数:27,代码来源:commands.c

示例2: opendb

static char *vacuum1_thread_writer(int iTid, void *pArg){
  Error err = {0};                /* Error code and message */
  Sqlite db = {0};                /* SQLite database connection */
  opendb(&err, &db, "test.db", 0);
  i64 i = 0;

  while( !timetostop(&err) ){
    i++;

    /* Insert lots of rows. Then delete some. */
    execsql(&err, &db, 
        "WITH loop(i) AS (SELECT 1 UNION ALL SELECT i+1 FROM loop WHERE i<100) "
        "INSERT INTO t1 SELECT randomblob(50), randomblob(2500) FROM loop"
    );

    /* Delete lots of rows */
    execsql(&err, &db, "DELETE FROM t1 WHERE rowid = :i", &i);
    clear_error(&err, SQLITE_LOCKED);

    /* Select the rows */
    execsql(&err, &db, "SELECT * FROM t1 ORDER BY x");
    clear_error(&err, SQLITE_LOCKED);
  }

  closedb(&err, &db);
  print_and_free_err(&err);
  return sqlite3_mprintf("ok");
}
开发者ID:1018824313,项目名称:sqlite,代码行数:28,代码来源:tt3_vacuum.c

示例3: fcntl

inline int fcntl(int d, long cmd, long arg, boost::system::error_code& ec)
{
    clear_error(ec);
    int result = error_wrapper(::fcntl(d, cmd, arg), ec);
    if (result != -1)
        clear_error(ec);
    return result;
}
开发者ID:asadchev,项目名称:asadchev,代码行数:8,代码来源:descriptor_ops.hpp

示例4: open

inline int open(const char* path, int flags, boost::system::error_code& ec)
{
    clear_error(ec);
    int result = error_wrapper(::open(path, flags), ec);
    if (result >= 0)
        clear_error(ec);
    return result;
}
开发者ID:asadchev,项目名称:asadchev,代码行数:8,代码来源:descriptor_ops.hpp

示例5: close

inline int close(int d, boost::system::error_code& ec)
{
    clear_error(ec);
    int result = error_wrapper(::close(d), ec);
    if (result == 0)
        clear_error(ec);
    return result;
}
开发者ID:asadchev,项目名称:asadchev,代码行数:8,代码来源:descriptor_ops.hpp

示例6: ioctl

inline int ioctl(int d, long cmd, ioctl_arg_type* arg,
                 boost::system::error_code& ec)
{
    clear_error(ec);
    int result = error_wrapper(::ioctl(d, cmd, arg), ec);
    if (result >= 0)
        clear_error(ec);
    return result;
}
开发者ID:asadchev,项目名称:asadchev,代码行数:9,代码来源:descriptor_ops.hpp

示例7: scatter_read

inline int scatter_read(int d, buf* bufs, size_t count,
                        boost::system::error_code& ec)
{
    clear_error(ec);
    int result = error_wrapper(::readv(d, bufs, static_cast<int>(count)), ec);
    if (result >= 0)
        clear_error(ec);
    return result;
}
开发者ID:asadchev,项目名称:asadchev,代码行数:9,代码来源:descriptor_ops.hpp

示例8: gather_write

inline int gather_write(int d, const buf* bufs, size_t count,
                        boost::system::error_code& ec)
{
    clear_error(ec);
    int result = error_wrapper(::writev(d, bufs, static_cast<int>(count)), ec);
    if (result >= 0)
        clear_error(ec);
    return result;
}
开发者ID:asadchev,项目名称:asadchev,代码行数:9,代码来源:descriptor_ops.hpp

示例9: poll_write

inline int poll_write(int d, boost::system::error_code& ec)
{
  clear_error(ec);
  pollfd fds;
  fds.fd = d;
  fds.events = POLLOUT;
  fds.revents = 0;
  clear_error(ec);
  return error_wrapper(::poll(&fds, 1, -1), ec);
}
开发者ID:KyleGospo,项目名称:City-17-Episode-One-Source,代码行数:10,代码来源:descriptor_ops.hpp

示例10: poll_read

inline int poll_read(int d, boost::system::error_code& ec)
{
    clear_error(ec);
    pollfd fds;
    fds.fd = d;
    fds.events = POLLIN;
    fds.revents = 0;
    clear_error(ec);
    int result = error_wrapper(::poll(&fds, 1, -1), ec);
    if (result >= 0)
        clear_error(ec);
    return result;
}
开发者ID:asadchev,项目名称:asadchev,代码行数:13,代码来源:descriptor_ops.hpp

示例11: clear_error

int
hstcpcli::request_send()
{
  if (error_code < 0) {
    return error_code;
  }
  clear_error();
  if (fd.get() < 0) {
    close();
    return set_error(-1, "write: closed");
  }
  if (num_req_bufd == 0 || num_req_sent > 0 || num_req_rcvd > 0) {
    close();
    return set_error(-1, "request_send: protocol out of sync");
  }
  const size_t wrlen = writebuf.size();
  const ssize_t r = send(fd.get(), writebuf.begin(), wrlen, MSG_NOSIGNAL);
  if (r <= 0) {
    close();
    return set_error(-1, r < 0 ? "write: failed" : "write: eof");
  }
  writebuf.erase_front(r);
  if (static_cast<size_t>(r) != wrlen) {
    close();
    return set_error(-1, "write: incomplete");
  }
  num_req_sent = num_req_bufd;
  num_req_bufd = 0;
  DBG(fprintf(stderr, "REQSEND 0\n"));
  return 0;
}
开发者ID:AllenWeb,项目名称:mariadb,代码行数:31,代码来源:hstcpcli.cpp

示例12: stumpless_new_element

struct stumpless_element *
stumpless_new_element( const char *name ) {
  struct stumpless_element *element;

  clear_error(  );

  if( !name ) {
    raise_argument_empty( "name is NULL" );
    goto fail;
  }

  element = alloc_mem( sizeof( *element ) );
  if( !element ) {
    goto fail;
  }

  element->name = cstring_to_sized_string( name, &( element->name_length ) );
  if( !element->name ) {
    goto fail_name;
  }

  element->params = NULL;
  element->param_count = 0;

  return element;

fail_name:
  free_mem( element );

fail:
  return NULL;
}
开发者ID:goatshriek,项目名称:stumpless,代码行数:32,代码来源:entry.c

示例13: rdef_compile

status_t
rdef_compile(const char *outputFile)
{
	clear_error();

	if (outputFile == NULL || outputFile[0] == '\0') {
		rdef_err = B_BAD_VALUE;
		return rdef_err;
	}

	rsrc_file = outputFile;
	rdef_err = open_output_file();
	if (rdef_err != B_OK)
		return rdef_err;

	for (ptr_iter_t i = input_files.begin(); 
			(i != input_files.end()) && (rdef_err == B_OK); ++i) {
		char *path = (char *)*i;

		AddIncludeDir add(path);
		compile_file(path);
	}

	close_output_file();
	return rdef_err;
}
开发者ID:AmirAbrams,项目名称:haiku,代码行数:26,代码来源:compile.cpp

示例14: stumpless_add_element

struct stumpless_entry *
stumpless_add_element( struct stumpless_entry *entry,
                       struct stumpless_element *element ) {

  struct stumpless_element **new_elements;
  size_t old_elements_size;
  size_t new_elements_size;

  clear_error(  );

  if( !entry ) {
    raise_argument_empty( "entry is NULL" );
    return NULL;
  }

  if( !element ) {
    raise_argument_empty( "element is NULL" );
    return NULL;
  }
  // todo need to check for duplicates first

  old_elements_size = sizeof( element ) * entry->element_count;
  new_elements_size = old_elements_size + sizeof( element );

  new_elements = realloc_mem( entry->elements, new_elements_size );
  if( !new_elements ) {
    return NULL;
  }

  new_elements[entry->element_count] = element;
  entry->elements = new_elements;
  entry->element_count++;

  return entry;
}
开发者ID:goatshriek,项目名称:stumpless,代码行数:35,代码来源:entry.c

示例15: vstumpless_set_entry_message

struct stumpless_entry *
vstumpless_set_entry_message( struct stumpless_entry *entry,
                              const char *message,
                              va_list subs ) {
  char *formatted_message;
  size_t message_length;

  clear_error(  );

  if( !entry ) {
    raise_argument_empty( "entry is NULL" );
    return NULL;
  }

  if( !message ) {
    free_mem( entry->message );
    entry->message = NULL;
    entry->message_length = 0;

  } else {
    formatted_message = config_format_string( message, subs, &message_length );
    if( !formatted_message ) {
      return NULL;

    } else {
      free_mem( entry->message );
      entry->message = formatted_message;
      entry->message_length = message_length;

    }
  }

  return entry;
}
开发者ID:goatshriek,项目名称:stumpless,代码行数:34,代码来源:entry.c


注:本文中的clear_error函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。