#include "qemu/iov.h"
#include "trace.h"
#include "hw/usb.h"
-#include "hw/usb/desc.h"
+#include "desc.h"
/* ----------------------------------------------------------------------- */
static MTPData *usb_mtp_get_partial_object(MTPState *s, MTPControl *c,
MTPObject *o)
{
- MTPData *d = usb_mtp_data_alloc(c);
+ MTPData *d;
off_t offset;
+ if (c->argc <= 2) {
+ return NULL;
+ }
trace_usb_mtp_op_get_partial_object(s->dev.addr, o->handle, o->path,
c->argv[1], c->argv[2]);
+ d = usb_mtp_data_alloc(c);
d->fd = open(o->path, O_RDONLY);
if (d->fd == -1) {
usb_mtp_data_free(d);
return;
}
s->desc = strrchr(s->root, '/');
- /* Mark store as RW */
- if (!s->readonly) {
- s->flags |= (1 << MTP_FLAG_WRITABLE);
- }
if (s->desc && s->desc[0]) {
s->desc = g_strdup(s->desc + 1);
} else {
s->desc = g_strdup("none");
}
}
+ /* Mark store as RW */
+ if (!s->readonly) {
+ s->flags |= (1 << MTP_FLAG_WRITABLE);
+ }
+
}
static const VMStateDescription vmstate_usb_mtp = {