Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- diff -r ec3029bb6f0b src/MessageQueue.gs
- --- a/src/MessageQueue.gs Wed Aug 15 12:05:06 2012 -0400
- +++ b/src/MessageQueue.gs Wed Aug 15 22:25:15 2012 +0200
- @@ -46,10 +46,10 @@
- self.context = context
- self.source = new MessageQueue.Source(self)
- - self.source.source.attach(context)
- + self.source.attach(context)
- def detach ()
- - self.source.source.destroy()
- + self.source.destroy()
- self.source = null
- self.context = null
- @@ -68,35 +68,21 @@
- def is_empty () : bool
- return self.messages.is_empty()
- - [Compact]
- - class Source
- - source : GLib.Source
- + class Source : GLib.Source
- queue : MessageQueue
- construct (queue : MessageQueue)
- - self.source = new GLib.Source(funcs, LMQSIZE)// see bottom of file
- self.queue = queue
- - def attach (context : MainContext)
- - self.source.attach(context)
- + def override prepare (out timeout : int) : bool
- + timeout = 0
- + return not queue.messages.is_empty()
- - funcs : static SourceFuncs = {prepare, check, dispatch, null}
- + def override check () : bool
- + return not queue.messages.is_empty()
- - def static prepare (source : GLib.Source, out timeout : int) : bool
- - timeout = 0
- - return not ((Source) source).queue.messages.is_empty()
- -
- - def static check (source : GLib.Source) : bool
- - return not ((Source) source).queue.messages.is_empty()
- -
- - def static dispatch (source : GLib.Source, cb : SourceFunc) : bool
- - if ((Source) source).queue.callback is not null
- - ((Source) source).queue.callback(((Source) source).queue)
- + def override dispatch (cb : SourceFunc) : bool
- + if queue.callback is not null
- + queue.callback(queue)
- return true
- -
- -// In Vala/Genie sizeof(class) gives the size of a pointer rather than the
- -// struct itself. This is a dirty, nasty hack which may break in a future
- -// version of valac, cause blindness, and contribute to global warming.
- -[CCode (cname = "LMQSIZE;\n#ifndef LMQSIZE\n#define LMQSIZE sizeof(LmMessageQueueSource)\n#endif //")]
- -LMQSIZE : extern uint
Add Comment
Please, Sign In to add comment