drgn/libdrgn/binary_buffer.c
Omar Sandoval b5ed892481 Fix some include-what-you-use warnings and update for Bear 3
Bear 3 changed the CLI arguments, so update scripts/iwyu.py for it and
clean up some new warnings.

Signed-off-by: Omar Sandoval <osandov@osandov.com>
2021-02-26 16:05:49 -08:00

46 lines
1.0 KiB
C

// Copyright (c) Facebook, Inc. and its affiliates.
// SPDX-License-Identifier: GPL-3.0+
#include "binary_buffer.h"
#include "drgn.h"
#include <stdarg.h>
#include <stdio.h>
#include <stdlib.h>
static struct drgn_error *binary_buffer_error_vat(struct binary_buffer *bb,
const char *pos,
const char *format,
va_list ap)
{
char *message;
int ret = vasprintf(&message, format, ap);
if (ret == -1)
return &drgn_enomem;
struct drgn_error *err = bb->error_fn(bb, pos, message);
free(message);
return err;
}
struct drgn_error *binary_buffer_error(struct binary_buffer *bb,
const char *format, ...)
{
va_list ap;
va_start(ap, format);
struct drgn_error *err = binary_buffer_error_vat(bb, bb->prev, format,
ap);
va_end(ap);
return err;
}
struct drgn_error *binary_buffer_error_at(struct binary_buffer *bb,
const char *pos, const char *format,
...)
{
va_list ap;
va_start(ap, format);
struct drgn_error *err = binary_buffer_error_vat(bb, pos, format, ap);
va_end(ap);
return err;
}