Re: 0.1.54



On Tue, Aug 08, 2000 at 01:10:14AM -0700, eskil@eazel.com wrote:
> Robert Mibus wrote:
> 
> >         Small fix so it does not call FastSync or SlowSync if
> >         pilot moddata < backupdate. I really hope this works,
> >         or I'm in it for a world of pain and bugreports.
> > but what about when the local data changes but not the pilot?
> > what we need is a has_local_data_changed() as well. with the merge/copy
> > from pilot sync's would be ok, but otherwise... when it does
> > eventually get done, surely it would be better in manager.c:iterate_dbs()?
> 
> Hmm, the problem is just determing whether or not the local storage has
> changed. I'm not sure that will be easy to solve (or maybe I'm just too
> sleepy
> right now).

how about adding to 
struct _GnomePilotConduitStandardClass (gnome-pilot-conduit-standard.h)

	gint (*changed)			  (GnomePilotConduitStandard *conduit);

along w/ the sync methods. if ->changed [pointer] is NULL, we assume that the local store
has always changed. otherwise, if ->changed() [returned value] is 0 and moddata
< backupdate, dont bother syncing. this puts the onus on the conduits to know
if theyve changed, which shouldnt be *that* hard. and it requires next to no
changes to conduits, just ->changed = 0 added somewhere.

comments?

mibus

-- 
Robert Mibus <mibus@bigpond.com>
Memory fault -- core...uh...um...core... Oh dammit, I forget!




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]