[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH V5 07/32] libxl.h: document the paradigm of using libxl types
On Tue, 2014-05-20 at 15:54 +0100, Ian Jackson wrote: > Ian Campbell writes ("Re: [PATCH V5 07/32] libxl.h: document the paradigm of > using libxl types"): > > On Tue, 2014-05-13 at 22:53 +0100, Wei Liu wrote: > > > + * once afterwards, to clean up, regardless of whether operations on > > > + * this object succeeded or failed. See the xl code for examples. > > > + * > > > + * "init" is idempotent. > > > > I wondered if this was true, or if calling it twice would leak. None of > > the _init functions allocate any memory so this is OK, I think. > > I think it's a necessary guarantee that they don't, for this to be a > convenient interface. Yes. > > Calling init on a partially setup object could leak things though, so > > init is only idempotent until you initialise some of the fields, which > > isn't a terribly useful guarantee I don't think. > > Uh. What a strange thing to say. > > init is idempotent even if you have already filled in some of the > fields with allocated values. If you initialise some of the fields > and then call init one or more times it's just like calling it once. Right, that is true, but the first call was destructive is what I was getting at. I think I was simply thinking myself into circles. > What you mean is that it is _incorrect_ to call init on a struct with > allocations in it. Yes. That's surely obvious. But it has nothing > to do with idempotency. Right. Ian. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |