> On 10 Apr 2017, at 16:28, Eric Wong <e@xxxxxxxxx> wrote: > > Lars Schneider <larsxschneider@xxxxxxxxx> wrote: >>> diff --git a/convert.h b/convert.h >>> index 82871a11d5..da6c702090 100644 >>> --- a/convert.h >>> +++ b/convert.h >>> @@ -42,6 +42,11 @@ extern int convert_to_git(const char *path, const char *src, size_t len, >>> struct strbuf *dst, enum safe_crlf checksafe); >>> extern int convert_to_working_tree(const char *path, const char *src, >>> size_t len, struct strbuf *dst); >>> +extern int async_convert_to_working_tree(const char *path, const char *src, >>> + size_t len, struct strbuf *dst, >>> + void *dco); >>> >> >> I don't like the void pointer here. However, "cache.h" includes "convert.h" and >> therefore "convert.h" cannot include "cache.h". That's why "convert.h" doesn't >> know about "struct delayed_checkout". > > You can forward declare the struct without fields in convert.h: OMG. Of course. Now I feel stupid. >> I just realized that I could move "struct delayed_checkout" and "enum ce_delay_state" >> definition from "cache.h" to "convert.h" to solve the problem nicely. >> > > But yeah, maybe you can reduce cache.h size, too :) Yeah, then I will do this in the next round. Thanks, Lars