[06:34] <Kilos> morning all
[08:03] <superfly> Hi Kilos
[08:04] <Kilos> hi superfly
[12:38] <superfly> Kilos: cold today?/
[12:39] <Kilos> yeah inside is still cold. ice wasnt as bad this morning and sun very lekker, hows things there?
[12:40] <Kilos> fruit trees are starting to bud
[16:07] <Kilos> ai!
[16:11] <Kilos> hmm...
[16:16] <gremble> Evening
[16:17] <Kilos> hi gremble
[16:17] <Kilos> hows you lad?
[16:17] <gremble> How are you Kilos?
[16:17] <gremble> I am well thank you
[16:17] <Kilos> bit tired bu ok thanks
[16:17] <gremble> Why are you tired?
[16:20] <Kilos> trying to move and repair burnt pipes to the sprayers and climbing to top of water tand and trying to slow leak down till we have the metal frame work welded together and painted for a new jojo tank to stand on
[16:20] <Kilos> im not much of a physical labourer anymore
[16:20] <Kilos> used to love physical stuff
[16:22] <Kilos> oh and the cold doesnt help
[16:23] <Cryterion> What fruits are you growing Kilos?
[16:24] <Cryterion> Oh and hi guys
[16:24] <Kilos> we have a few different kinds of peaches and plums
[16:24] <Kilos> hi Cryterion
[16:24] <Cryterion> nice, peaches are good
[16:25] <Kilos> and mulberries but last year the late frost killed all flowers and all leaves and new shoots on trees
[16:25] <Kilos> so no fruit last year
[16:25] <Kilos> even killed an old fig tree
[16:25] <Kilos> got a new one in a pot ready for planting
[16:26] <Cryterion> frost is always a problem in inland areas
[16:26] <Kilos> yeah but the fruit trees need it , just not late like last year
[16:27] <Kilos> i tried growing peaches in toti, they grow beautifully but never bare fruit
[16:27] <Kilos> so freezing temps are needed
[16:27] <Cryterion> solar cycle was at max about a year ago, it'll all improve over the next decade as we head for solar min
[16:28] <Kilos> eish i want fruit soon man not in ten years time
[16:28] <Kilos> lol
[16:28] <Kilos> fruit is expensive
[16:28] <Cryterion> No chance on peaches in durban, maybe a chance in 10 years, but then cycles out again
[16:29] <Kilos> i dont think peaches will ever have fruit in durbs
[16:29] <Kilos> must have cold and frost
[16:29] <Cryterion> try protect them with plastic covering or something to help
[16:30] <Kilos> yeah i will make some plan this year
[16:30] <Kilos> it caught us unawares last year
[16:31] <Kilos> weather was warming lekker then boom like a month late minus temps
[16:43] <superfly> My parents had plenty fruit trees growing in their garden in Paarl
[16:43] <superfly> It never got to freezing, but it did get quite cold
[16:53] <Kilos> well i just hope it keeps warming now then well have
[17:27] <Kilos> Maaz  seen inetpro
[17:27] <Maaz> Kilos: inetpro was last seen 2 days, 23 hours, 21 minutes and 58 seconds ago in #ubuntu-za on freenode [2015-08-06 11:05:28 PDT], and has been online on freenode since 2015-07-29 15:37:24 PDT
[17:27] <Kilos> oh my
[17:28] <Kilos> Maaz  seen hibana
[17:28] <Maaz> Kilos: hibana was last seen 1 month, 24 days, 3 hours, 21 minutes and 47 seconds ago in #ubuntu-za on freenode [2015-06-16 07:06:16 PDT], and has been offline on freenode since 2015-06-16 07:13:14 PDT
[17:35] <Kilos> early night for me, night all, sleep tight
[18:25] <magespawn> good evening
[18:57] <gremble> Hey magespawn
[19:27] <magespawn> hi gremble
[19:31] <zabear> Hi
[19:32] <gremble> o/
[19:34] <zabear> I need assistance with a problem - I downloaded 7zip - installed with Ubuntu software and it is on my system. But I dont find it at applications anywhere.  How can I activate it? Advice.
[19:34] <magespawn> hi zabear i think that on linux it may be comman line only no gui
[19:35] <magespawn> comman = command
[19:36] <zabear> Mhm - what else can I use for a gui to use as zipping?
[19:36] <zabear> to zip files which are too big?
[19:37] <gremble> You should be able to do it from nautilus (your file browser)
[19:38] <gremble> or "Archive manager"
[19:38] <magespawn> try man 7zip that should give the commands
[19:40] <magespawn> http://www.thegeekstuff.com/2010/04/7z-7zip-7za-file-compression/
[19:40] <zabear> afraid of command line use - will take too much time and learning curve
[19:41] <gremble> It really won't. Do it slowly.
[19:41] <zabear> Is nautilus automatic part of ubuntu? or need I install it
[19:41] <gremble> It is the name of your file browser
[19:41] <gremble> You have it already
[19:42] <zabear> Under what is it listed or how do I open it?
[19:42] <gremble> should be the little file drawer on your bar thing
[19:43] <zabear> sorry, but I just use files - dont know whats under the hood
[19:43] <magespawn> zabear: what version of ubuntu are you using? xubuntu? lubuntu?
[19:43] <zabear> 14.04
[19:43] <zabear> ubuntu
[19:43] <zabear> with gnome
[19:44] <magespawn> brb
[19:45] <magespawn> yup it is nautilus
[19:45] <zabear> but how do I activate it then?
[19:46] <gremble> Activate what?
[19:46] <zabear> nautilus
[19:47] <zabear> to activate the zip part
[19:47] <gremble> Right-click a file and then "archive"?
[19:48] <zabear> so is archive also zipping?
[19:48] <gremble> Yes
[19:48] <gremble> You just choose 7zip
[19:49] <zabear> OK - will try this
[19:51] <magespawn> https://www.ibm.com/developerworks/community/blogs/6e6f6d1b-95c3-46df-8a26-b7efd8ee4b57/entry/how_to_use_7zip_on_linux_command_line144?lang=en
[19:51] <magespawn> there are examples on both of those links
[19:51] <gremble> ^ Those are good
[19:51] <magespawn> my recommendation would be to learn the command line
[19:51] <gremble> Using the commandline is daunting, but much easier
[19:52] <gremble> daunting in the beginning*
[19:52] <magespawn> once you get used to it
[19:52] <zabear> I compresed it with .tar.gz - do not find 7zip , but there is a .7z
[19:53] <gremble> .7z is 7zip.
[19:53] <gremble> tar.gz uses gzip
[19:53] <gremble> it is compressed
[19:53] <zabear> I looked for zip, not for compression - now I know how to do this - thanx for the help
[19:54] <gremble> zip is compression. Tar is an archive format
[19:54] <spinza> http://askubuntu.com/questions/25347/what-command-do-i-need-to-unzip-extract-a-tar-gz-file
[19:55] <magespawn> tar.gz is the built in linux comes as standard as far as i know
[19:55] <zabear> I just did not know the terms - have learnd something
[19:55] <spinza> yes
[19:55] <zabear> bye then
[19:55] <gremble> fine. love and leave us like that.
[19:56] <magespawn> gremble: some are like that, come for a quickie
[21:46] <gremble> Good night guys
[21:47] <magespawn> good night gremble
[21:47] <magespawn> bed time for me too, good night all


[01:35] <PRab> How should I report an installation bug I came across with today's Lucid Daily cd?
[01:44] <zeroseven0183> Hi! I think "Bug#394003 Gwibber needs new icons (I can make some)" should be classified as Wishlist. Can someone clarify and do the adjustments. Follow the link: https://bugs.launchpad.net/gwibber/+bug/394003
[01:44] <ubot4> Launchpad bug 394003 in gwibber "Gwibber needs new icons (I can make some) (affects: 1)" [Undecided,New]
[01:49] <charlie-tca> PRab: did the installation complete?
[01:49] <PRab> No
[01:49] <PRab> Crashed right after I choose how I wanted my partitions
[01:50] <charlie-tca> Then you probably have to do a manual report using https://bugs.launchpad.net/ubuntu  -> Report a bug
[01:50] <PRab> I looked at that, but was unsure which package to file it against
[01:50] <PRab> https://bugs.launchpad.net/ubuntu/+source/base-installer/+bug/522425
[01:50] <ubot4> Launchpad bug 522425 in base-installer (Ubuntu) "Install crashes after choosing custom partitions. (affects: 1)" [Undecided,New]
[01:51] <PRab> Does that look right? I can move/change it if it would help
[01:51] <charlie-tca> If it is the alternate cd, use 'debian-installer'
[01:51] <PRab> Nope, live cd
[01:52] <PRab> the daily build from today
[01:52] <charlie-tca> Then ubiquity, normally
[01:52] <charlie-tca> I must say, that is colorful.
[01:52] <PRab> agreed
[01:53] <PRab> looks like when I kicked my old school Nintendo
[01:53] <charlie-tca> https://wiki.ubuntu.com/DebuggingUbiquity  will help some getting logs, sometimes.
[01:53] <charlie-tca> Sometimes you can't get any
[01:54] <charlie-tca> That does look bad, to me. :-(
[01:55]  * wgrant knew something was up when the PNG was 4.5MiB.
[01:55] <PRab> so, How do I move it from base-installer to Ubiquity
[01:55] <PRab> yeah, forgot to compress it
[01:55] <charlie-tca> I did
[01:55] <PRab> and I had to take it with a camera because prtscr couldn't work in condition
[01:56] <PRab> thaks
[01:56] <charlie-tca> That is lucid, right?
[01:57] <PRab> yep
[01:58] <PRab> Thanks for the help getting this filed correctly, I'm going to go watch the Olympics
[01:58] <charlie-tca> np, have fun
[02:01] <zeroseven0183> Please set Bug#504970 Gwibber could use an Ubuntu-specific theme (shared with Empathy) as Wishlist. https://bugs.launchpad.net/gwibber/+bug/504970
[02:01] <ubot4> Launchpad bug 504970 in gwibber "Gwibber could use an Ubuntu-specific theme (shared with Empathy) (affects: 1)" [Undecided,New]
[04:05] <Roxyhart0>  hi guy i am having this problem<EMAIL_ADDRESS>how i can upgrade my samba version (reliable) fro my ubuntu 9.10?
[04:07] <persia> Roxyhart0: There doesn't seem to be a supported backport, so there's no direct path.  Someone in #ubuntu may be able to help you, or you may need to wait.
[04:07] <persia> A clearer understanding of which bugs caused issues would be helpful, as some of them may qualify for an update to 9.10.
[04:09] <Roxyhart0> nobody in ubuntu-server tell me nothing i really need to configurate my server cause the really old one just die
[04:10] <Roxyhart0> what do you mean with the last part, " as some of them may qualify for an update to 9.10."
[04:11] <nigelb> Roxyhart0: well, some of them could be fixed, if the bug is fixed upstream
[04:12] <persia> And if they are critical enough, they could be fixed in 9.10, rather than waiting for the new upstream in 10.04.  But this needs to be documented very carefully.
[04:12] <Roxyhart0> i had 9.04 before and i update it to 9.10 but in the "bugs" sections say it is a problem with samba version 3.4.0 which i need to upgrade but i dont know how to do that for 9.10 and if it will work or will craush my server
[04:12] <Roxyhart0> the bug is already documented but still nothing...
[04:12] <nigelb> Roxyhart0: the problem is with samba?
[04:12] <Roxyhart0> yes
[04:13] <persia> Is the bug in launchpad?
[04:13] <Roxyhart0> wait a min
[04:13] <nigelb> Roxyhart0: but it is fixed in later versions of samba?
[04:13] <Roxyhart0><EMAIL_ADDRESS>[04:16] <nigelb> but it says the bug is in 3.3.2, and Karmic has 3.4.0
[04:17] <Roxyhart0> not but say 3.4.1 solve that
[04:17] <Roxyhart0> i am cheking where i see more info
[04:21] <nigelb> okay :)
[04:24] <Roxyhart0> https://admin.fedoraproject.org/updates/F11/FEDORA-2009-9443
[05:05] <Takyoji> Would this be an appropriate channel for discussion of Lucid Lynx testing, or?
[05:05] <nigelb> Takyoji: #ubuntu+1
[05:06] <Takyoji> Ahh, thanks
[05:07] <bdmurray> well there is ubuntu-testing for topics specifically related to testing
[05:36] <Roxyhart0> Hi guys i have this problem and i have ubuntu 9.10 how i can uograde my samba version to 3.4.1 compatible with ubuntu 9.10
[05:38] <Roxyhart0> sorry this is the same problem  https://admin.fedoraproject.org/updates/F11/FEDORA-2009-9443
[05:42] <micahg> Roxyhart0: we generally do not upgrade versions in a stable release
[05:42] <micahg> is there a specific bug you are trying to fix?
[05:43] <Roxyhart0> i cant join machines to my domain controler
[05:43] <micahg> ah, I see now
[05:43] <micahg> let me see if I can find the patch
[05:43] <Roxyhart0> ok, thanks a lot
[05:44] <micahg> if it's small, we might be able to do an SRU
[05:45] <Roxyhart0> what is that?
[05:45] <micahg> stable release update
[05:45] <Roxyhart0> ah ok, could be great
[05:46] <Roxyhart0> i remebeer that i read somwhere somebody form ubuntu was working in 3.4.3 or something like that?
[05:46] <micahg> lucid has 3.4.5
[05:46] <Roxyhart0> ah ok
[05:48] <micahg> Roxyhart0: hold on
[05:52] <micahg> Roxyhart0: I have to go to sleep, can you please file a bug for this and subscribe me?
[05:52] <micahg> I'll check tomorrow if the patch is SRUable
[05:53] <Roxyhart0> is my first time whitch that how i can do that?
[05:54] <micahg> Roxyhart0: do you have an ubuntu desktop machine?
[05:54] <micahg> or only a server?
[05:54] <Roxyhart0> only server
[05:54] <Roxyhart0> about 4 server
[05:54] <Roxyhart0> but 9.04 and now 9.10
[05:55] <micahg> Roxyhart0: k, then use this for now: http://bugs.launchpad.net/ubuntu/+source/samba/+filebug?no-redirect
[05:57] <micahg> Roxyhart0: to subscribe me, after you submit the bug, just click subscribe someone else and type my nick
[05:59] <Roxyhart0> ok, thansk a lot.what time is there?
[05:59] <micahg> almost midnight
[05:59] <Roxyhart0> really...
[05:59]  * micahg is in Chicago
[05:59] <Roxyhart0> ok, thanks a lot again
[06:00] <micahg> Roxyhart0: np, just subscribe me and I'll look in the morning
[06:04] <Roxyhart0> thanks a lot
[06:14] <Roxyhart0> hi guys i am trying to report a bug at lunchpat and i got this error. what it means Sorry, something just went wrong in Launchpad.
[06:14] <Roxyhart0> We’ve recorded what happened, and we’ll fix it as soon as possible. Apologies for the inconvenience.
[06:14] <Roxyhart0> Trying again in a couple of minutes might work
[06:15] <Roxyhart0> i has trying to do it 3 times
[06:16] <ddecator> Roxyhart0, trying it again in a few minutes sounds good, it could have been a connection problem. if you have the same problem again then we can help you figure out what is going on and file the report
[06:16] <Roxyhart0> ok, thanks
[06:21] <Roxyhart0> Hi guys..this https://bugs.launchpad.net/ubuntu/+source/samba/+bug/164544 look like similar to my problem ans there was some of adavances but i am not sure where i can get it or they send to the people that did the report bug?
[06:21] <ubot4> Launchpad bug 164544 in samba (Ubuntu) (and 1 other project) "Error while join to domain (Unable to create machine account)" [Undecided,Triaged]
[06:23] <ddecator> Roxyhart0, what version are you using?
[06:23] <Roxyhart0> 9.10
[06:24] <ddecator> sorry, what samba version?
[06:24] <Roxyhart0> 3.4.0
[06:25] <ddecator> i'm not sure if that patch is still relevant since there have been upgrades. go ahead and create a new report, just include a link to that bug you found so micahg can take a look at it in the morning
[06:26] <Roxyhart0> ok, thanks
[06:27] <ddecator> yw =)
[06:27] <ddecator> Roxyhart0, let me know if you're able to file the bug successfully this time. i'll stay on here until i know if you have or not before i go test a different bug
[06:28] <Roxyhart0> ok, i am doing it now
[06:31] <nigelb> om26er: re: gnome power manager bug, your guess is as good as mine
[06:32] <nigelb> I was hoping some dev would take a look at it
[06:32] <om26er> nigelb, that bug has been there from the alpha days of karmic
[06:32] <nigelb> om26er: I know, I remember triaging it back then
[06:33] <nigelb> but I have absolutely no clue what is to be done...
[06:33] <nigelb> talk to one of the devs perhaps
[06:35] <om26er> is there any gnome-power-manager available here at the moment?
[06:35] <om26er> *developers
[06:35] <nigelb> or try upstream?
[06:36] <nigelb> btw, attaching details of your hardware might be a good idea
[06:36] <om26er> nigelb, how to do that?
[06:36] <nigelb> you use a laptop rite?
[06:37] <nigelb> add a comment about your laptop make and model
[06:37] <nigelb> that would definitely help help
[06:41] <om26er> https://bugs.launchpad.net/ubuntu/+source/gnome-power-manager/+bug/492327
[06:41] <ubot4> Launchpad bug 492327 in gnome-power-manager (Ubuntu) "charger disconnected notification comes after 40secs (affects: 1)" [Undecided,Confirmed]
[06:41] <Roxyhart08> hi ddecator i just did that https://bugs.launchpad.net/ubuntu/+source/samba/+bug/522482. no sure if is ok, i couldn to see where i need to send to the specific person?
[06:41] <ubot4> Launchpad bug 522482 in samba (Ubuntu) "Domain Members can not join to Samba DC (ubuntu 9.10). (affects: 1)" [Undecided,New]
[06:41] <ddecator> Roxyhart08, i'll take care of adding micahg, let me look at it a sec...
[06:42] <nigelb> Roxyhart08: can you add the samba version and your OS version too please?
[06:43] <Roxyhart08> ok
[06:43] <nigelb> (version number like 3.0.0. and Os version like 9.10 or 9.04)
[06:44] <ddecator> Roxyhart08, i added micahg and posted the possible duplicate in a comment for micahg to look at in the morning
[06:44] <nigelb> om26er: I guess you have to wait now :)
[06:45] <om26er> nigelb, thanks for the help :)
[06:45] <ddecator> Roxyhart08, just add the info nigelb asked for and it should be good =)
[06:45] <nigelb> no problem :)
[06:46] <ddecator> alright, i need to go test a UNE bug then head off to bed. night all
[06:48] <Roxyhart08> yes ..but thank a lot really guys...thanks a lot! you are very kind
[06:48] <Roxyhart08> good night over there
[07:11] <om26er> https://bugs.launchpad.net/ubuntu/+source/empathy/+bug/520579
[07:11] <ubot4> Launchpad bug 520579 in empathy (Ubuntu) "Empathy cannot connect to IRC (affects: 1)" [Undecided,New]
[07:11] <om26er> this bug is reported by a crunchbag linux user so what should I do about this?
[07:17] <kermiac_> om26er: maybe assign it to crunchbang? https://bugs.edge.launchpad.net/crunchbang/+bugs
[07:17] <kermiac_> just guessing though :)
[07:29] <Roxyhart08> i got another question...when configurate a folder for every user and they can see this folders but when i copy data from the server to each user folder they can't see this new data, just the old one and the permisions are the same "users". i mean it does not refresh? any idea?
[07:30] <nigelb> Roxyhart08: can you ask in #ubuntu please? that is the main support channel
[07:30] <Roxyhart08> sorry
[07:52] <zeroseven0183> Bug #379855 looks like is a feature request/improvement (wishlist)
[07:52] <ubot4> Launchpad bug 379855 in gwibber "Insufficient notification (affects: 2)" [Undecided,New] https://launchpad.net/bugs/379855
[09:22] <LimCore> an interesting article about why open source model (standard bazaar model) can fail - http://blogs.msdn.com/shawnhernan/archive/2010/02/13/microsoft-s-many-eyeballs-and-the-security-development-lifecycle.aspx
[09:23] <LimCore> thinking of it, perhaps ubuntu could use real, payed, security and bug fixing teams
[09:23] <LimCore> as we spoken recently; Is any such effort on the way?
[09:31] <edakiri> LimCore: they fix bugs on what is in main
[09:31] <edakiri> i believe
[09:32] <kermiac> is there a standard response for kernel bugs set to invalid due to the battery draining whilst suspended?
[09:33] <kermiac> I have asked in #ubuntu-kernel but noone's around
[09:35] <LimCore> edakiri: yes there is one security team; also I was thinking we could use more, more formialized, perhaps payable, not just I-do-what-I-like-open-source help for more areas
[09:36] <edakiri> LimCore: as far as i know, cash flow to allocate for that has not yet been established.  No profit to spend unless maybe cuts were made somewhere else.
[09:37] <edakiri> unless things have changed since i last knew
[09:37] <persia> LimCore: There's a fair number of funded developers who work on various areas of Ubuntu.  If you want more, or someone working on something specific, you'll want to arrange to pay them :)  There's lots of people who'd be happy to receive the money to focus on certain areas.
[09:58] <kermiac> For anyone participating in the upcoming kernel hugday, a canned response for invalid "battery drained whilst suspended" bugs is...
[09:59] <kermiac> Thank you for taking the time to report this bug and helping to make Ubuntu better. This report seems to indicate that your battery drained while the machine was suspended.  In this case a false bug report is generated, we are therefore closing this bug Invald.  Please see https://wiki.ubuntu.com/DebuggingKernelSuspendHibernateResume#Is%20this%20really%20a%20failure? for more information.
[10:04] <BlackZ> kermiac: which bug?
[10:05] <kermiac> bug 356456
[10:05] <ubot4> Launchpad bug 356456 in linux (Ubuntu) "[Hewlett-Packard HP Compaq nx6325] suspend/resume failure (affects: 2)" [Undecided,Invalid] https://launchpad.net/bugs/356456
[10:05] <kermiac> i've already added the response & inavlidated it
[10:05] <kermiac> as the op stated the "Battery went empty during suspend"
[10:06] <BlackZ> kermiac: yes, well done
[10:13] <kermiac> the stock reply has been added to the bottom of the wiki now for future reference
[10:13] <kermiac> https://wiki.ubuntu.com/DebuggingKernelSuspendHibernateResume
[10:13] <kermiac> night all :)
[10:14] <thekorn> well done and good night kermiac ;)
[10:14] <kermiac_> night thekorn :)
[11:10] <q0k> Does this bug affect you? https://bugs.launchpad.net/ubuntu/+source/installation-guide/+bug/522112
[11:10] <ubot4> Launchpad bug 522112 in installation-guide (Ubuntu) "version number confusion in 9.10 installation guide (affects: 1)" [Undecided,New]
[11:17] <q0k> Does this bug affect you? https://bugs.launchpad.net/ubuntu/+source/installation-guide/+bug/522112
[11:17] <ubot4> Launchpad bug 522112 in installation-guide (Ubuntu) "version number confusion in 9.10 installation guide (affects: 1)" [Undecided,New]
[11:17] <q0k> ubot4, does it or not ? ;)
[11:17] <ubot4> q0k: Error: I am only a bot, please don't think I'm intelligent :)
[11:19] <kklimonda> q0k, it has already been reported as bug 522112. Also pasting your question or link once is sufficient - if you don't get any answer immediately it just means that we aren't looking right now.
[11:19] <ubot4> Launchpad bug 522112 in installation-guide (Ubuntu) "version number confusion in 9.10 installation guide (affects: 1)" [Undecided,New] https://launchpad.net/bugs/522112
[11:19] <kklimonda> erm
[11:19] <kklimonda> bug 505723
[11:19] <ubot4> Launchpad bug 505723 in installation-guide (Ubuntu) "9.10 install guide reads 9.04 and Jaunty, not 9.10 and Karmic (affects: 1)" [Undecided,Confirmed] https://launchpad.net/bugs/505723
[11:20] <kermiac_> q0k: !bot
[11:21] <kermiac_> !bot
[11:21] <ubot4> Hi! I'm #ubuntu-bugs's favorite infobot, you can search my brain yourself at http://ubottu.com/factoids.cgi - Usage info: http://wiki.ubuntu.com/IRC/Bots
[11:21] <q0k> hi ubot4
[11:21] <q0k> ubot4 thanks for your knowledge about PLENTY of bugs
[11:21] <ubot4> q0k: Error: I am only a bot, please don't think I'm intelligent :)
[11:22] <q0k> ubot4 I know but thanks anyway
[11:22] <ubot4> q0k: Error: I am only a bot, please don't think I'm intelligent :)
[11:22] <q0k> ;)
[11:25] <q0k> update
[11:25] <q0k> bug 505723
[11:25] <ubot4> Launchpad bug 505723 in installation-guide (Ubuntu) "9.10 install guide reads 9.04 and Jaunty, not 9.10 and Karmic (affects: 2) (dups: 1)" [Undecided,Confirmed] https://launchpad.net/bugs/505723
[12:34] <BUGabundo> Happy Carnaval o/
[12:35] <kklimonda> hey
[12:37] <BUGabundo> hey kklimonda
[12:45] <kklimonda> great, looks like I've scared away a user who had a problem with automouting his disk..
[12:46] <kklimonda> I've asked him to use ubuntu-bug storage and *gasp* register on launchpad
[12:46] <kklimonda> damn me and my demands..
[12:46] <BUGabundo> ahahaah
[12:46] <BUGabundo> yes , LP needs a lower entrie
[12:46] <kklimonda> BUGabundo, how lower it can get?
[12:47] <kklimonda> can it*
[12:47] <BUGabundo> if it goes to low, they ask ubuntu cds in LP user ml
[12:47] <BUGabundo> :)
[12:47] <BUGabundo> oh wait, that already happen
[12:47] <kklimonda> heh "you can't order CDs by using this page. go to shipit..."
[12:48] <BUGabundo> hihihi
[12:48] <kklimonda> BUGabundo, but seriously - how hard is registering on LP now? do you even have to confirm it by clicking some link that is sent to you?
[12:48] <BUGabundo> I remember a period when it was harder to file a bug against LP itself, then to end a termo nuclear war
[12:48] <BUGabundo> :p
[12:49] <kklimonda> oh wait, he's back
[12:49] <BUGabundo> kklimonda: errk truth be told,  LP doesn't like hotmail
[12:49] <BUGabundo> most emails never get there
[12:49] <kklimonda> BUGabundo, I don't like hotmail
[12:49] <BUGabundo> or is it MSFT that doesn't like FLOSS?
[12:49] <BUGabundo> I never make them apart :D
[12:49] <kklimonda> BUGabundo, and people are starting to ask "can we just blacklist all @hotmail.com emails because we get more spam from them than from anywhere else"
[12:50] <kklimonda> heh, apparently he's waiting for the confirmation email.
[12:51] <kklimonda> maybe we should start asking people to register on LP during installation
[12:51] <kklimonda> by telling them how awesome ubuntu one is
[12:52] <kklimonda> we would all burn in hell though for lying..
[13:01] <BUGabundo> couth
[13:03] <porthose> hggdh ping! would you please renew my bug squad membership (cjsmo)  ;)
[13:08] <LimCore> jdstrand: glad to see your apparmor work ;)  It really do need polishing
[13:12] <vish> yofel_: can you ping me when you are triaging bugs? i need someone using kubuntu to have a look at  a couple of bugs
[13:26] <LimCore> jdstrand: if you need better example with the ssh keys security thing, ping me (bug #505493)
[13:26] <ubot4> LimCore: Bug 505493 on http://launchpad.net/bugs/505493 is private
[14:06] <hggdh> porthose: it has already expired, has it not?
[14:07] <porthose> hggdh, not sure, was checking email and found the notice :)
[14:09] <hggdh> porthose: I found it (was looking for cjsmo, it was listed under your name ;-)
[14:09] <hggdh> porthose: done, thank you
[14:09] <porthose> hggdh, thank you :)
[14:10] <hggdh> yw
[14:23] <thekorn> maybe https://edge.launchpad.net/~bugsquad/+members is an extreme example, but this kind of list needs a separate overview of all admins of a team
[14:25] <kklimonda> thekorn, or sorting by status should actually work as expected
[14:25] <thekorn> yeah, and not on a per page basis
[14:25] <thekorn> which is kind of useless
[14:27] <kklimonda> that's my point exactly
[14:27] <hggdh> I agree. And an easy way to zeroing in somebody
[14:27] <hggdh> like a search facility (I know, I am in wishlist territory)
[14:28] <nigelb> try using the API for now
[14:29]  * vish wonders where all the members triaging kubuntu bug hang out
[14:29] <nigelb> I didn't know there was a separate team for kubuntu
[14:29] <hggdh> #kubuntu, or #kubuntu-bugs?
[14:30] <nigelb> #kubuntu-bugs is nonexistent
[14:30] <nigelb> and #kubuntu is probably support
[14:30] <nigelb> my best guess is #kubuntu-devel?
[14:30] <thekorn> -devel
[14:31] <vish> no k-devel either.. :s
[14:31] <BUGabundo> lol
[14:31] <BUGabundo> no one tracks down k bugs :D
[14:31] <BUGabundo> there are NONE
[14:31]  * BUGabundo hides
[14:31] <vish> hehe
[14:32] <persia> Um, there are a number of people tracking Kubuntu bugs.
[14:32] <persia> Some of them even hang out here.
[14:33] <persia> #kubuntu-devel is kinda like #ubuntu-desktop or #ubuntu-motu or #ubuntu-server, etc. : a developer team channel.  Bugs are looked at there, but not always the first-pass stuff.
[14:33] <BUGabundo> I was jk of course
[14:44] <hggdh> BUGabundo: I had forgotten it's carnival time :-(
[14:44] <BUGabundo> yep
[14:45] <hggdh> and I am here, working! Life is unfair.
[14:45] <qense> carnival in the south here as well. Fortunately we're calvinist here. :P
[14:48] <hggdh> heh. I am not sure about the 'fortunately' part ;-)
[14:51] <nigelb> hggdh: hello :)
[14:52] <nigelb> hggdh: uploaded another bug fix, this time on a main package :)
[14:54] <hggdh> nigelb: great! And, of course, you tested it ;-)
[14:54] <nigelb> hggdh: yep.  test builded it here and uploaded dediff before hitting the bed.  Now its sponsored :)
[14:55] <hggdh> good work, nigelb
[14:55] <hggdh> brb
[17:48] <bcurtiswx> bug #203111 since pymsn is getting removed from lucid (if it hasn't been done already).. what to do with this one?
[17:48] <ubot4> Launchpad bug 203111 in pymsn (Ubuntu) "telepathy-butterfly crashed with AttributeError in process_response() (affects: 7) (dups: 6)" [Medium,Confirmed] https://launchpad.net/bugs/203111
[17:49] <kklimonda> bcurtiswx: it isn't removed from previous releases so the bug is still valid (if it wasn't fixed in the meantime :) )
[17:49] <bcurtiswx> kklimonda: thx :D
[18:10] <om26er> if a bug is being worked on upstream should I change it from triaged to in progress?
[18:12] <bcurtiswx> om26er no look at https://wiki.ubuntu.com/Bugs/Status
[18:12] <charlie-tca> no, it is still triaged for us
[18:12] <bcurtiswx> om26er: make sure to look at https://wiki.ubuntu.com/Bugs/Importance
[18:14] <om26er> if a bug is already triaged and I have ask a question(s) from the reporter should I mark it incomplete or leave it triaged?
[18:15] <bcurtiswx> om26er: which bug are you taking about?
[18:16] <om26er> bcurtiswx, not available at the moment but there have been a few that are triaged but dont seem to be happening
[18:16] <bcurtiswx> om26er: like which bugs for example?
[18:16] <om26er> bcurtiswx, I dont have the example at the moment :(
[18:17] <bcurtiswx> om26er: what do you mean by but there have been a few that are triaged but dont seem to be happening
[18:18] <om26er> bcurtiswx, I looked at them a few days ago
[18:18] <bcurtiswx> so which ones did you look at?
[18:19] <om26er> bcurtiswx, they were gwibber and netbook-launcher bugs I should search them
[18:22] <om26er> bcurtiswx, found one in empathy( not triaged though) I faced it in karmic whenever I tried to drag a chat tab and then in Lucid until 2.29.5 but was fixed after that
[18:22] <om26er> https://bugs.launchpad.net/ubuntu/+source/empathy/+bug/476449
[18:22] <ubot4> Launchpad bug 476449 in empathy (Ubuntu) "empathy crashed during moving im chat tab from one window (1 tab) to another (1 tab) (affects: 2)" [Medium,Confirmed]
[18:23] <om26er> this was the problem that I tested with every minor update of empathy and at last in 2.29.6 it got fixed (its was not upstream issue)
[18:26] <bcurtiswx> om26er: not entirely sure.  since the bug is karmic, but its fixed in lucid.. someone else wanna pipe in on how to treat that
[18:58] <BalleClorin> https://wiki.ubuntu.com/Bugs/Responses#Fixed%20in%20Development%20release%20while%20still%20existing%20in%20a%20previous%20release
[18:59] <BalleClorin> of course om26er quit before I could reply...
[19:00] <Damascene> do you have some link to problem that was fixed in the stable release and are back on the development release?
[19:00] <Damascene> *problems
[19:01] <kklimonda> Damascene: for example bug 434316
[19:01] <ubot4> Launchpad bug 434316 in update-notifier (Ubuntu) (and 1 other project) "Useless black bar in notification area visible (affects: 6) (dups: 2)" [Low,Invalid] https://launchpad.net/bugs/434316
[19:02] <kklimonda> bug report hasn't been touched to reflect that though - we are still hoping nobody is going to notice it and we can fix it ;)
[19:03] <Damascene> no I mean bug 518007
[19:03] <ubot4> Launchpad bug 518007 in linux (Fedora) (and 1 other project) "Asus Eee Function Keys (Hotkeys) are not working with Lucid 10.04 (affects: 2)" [Unknown,Unknown] https://launchpad.net/bugs/518007
[21:02] <elleuca> 519195
[21:02] <elleuca> may I raise bug   #519195 ?
[21:02] <ubot4> Launchpad bug 519195 in libindicator (Ubuntu) "No focus using keyboard (affects: 2)" [Undecided,New] https://launchpad.net/bugs/519195
[21:03] <elleuca> in order to have a good a11y, imho should be marked as blocker for lucid
[21:09] <kklimonda> elleuca: you should try on #ayatana as this is the place when discussion about libappindicator and the rest of indicators takes place.
[21:10] <nigelb> bdmurray: that video is great :)
[21:10] <nigelb> can you put the slides up somewhere too?
[21:10] <elleuca> kklimonda: thanks, I'll try
[21:11] <bdmurray> nigelb: yep - http://people.canonical.com/~brian/presentations/
[21:11] <bdmurray> nigelb: and thanks!
[21:12] <nigelb> bdmurray: I guess that solves the trouble of a general "how to triage classs".  All that would be need now would be about specific packages and their preferences
[21:12] <bdmurray> nigelb: well until the Launchpad UI changes significantly ;-)
[21:13] <nigelb> yea ;)
[21:13] <nigelb> I'll set up the smaller classes starting from lucid release wrt to each of the smaller teams
[21:14] <nigelb> ^ makes sense?
[21:14] <bdmurray> nigelb: I'm not quite certain what you mean
[21:15] <nigelb> bdmurray: well, something like how to deal with X bugs, or sound bugs (like the earlier one dan gave) or firefox bugs
[21:15] <nigelb> not a class as such, more like a Q and A session
[21:15] <bdmurray> nigelb: okay, yes that makes a lot of sense
[21:16] <nigelb> bdmurray: thanks for taking the time to look into it :)
[21:39] <edakiri> where is a good place to read/learn about ddebs?
[21:41] <micahg> edakiri: https://wiki.ubuntu.com/DebuggingProgramCrash
[21:43] <edakiri> thanks
[23:51] <LimCore> lol, konversation shows being banned as "gives channel owner privileges" woot?
[23:55] <ddecator> bug 522489 was made public by the OP but still has a coredump file
[23:55] <ubot4> Launchpad bug 522489 in firefox (Ubuntu) "firefox-bin crashed with SIGSEGV in pthread_mutex_lock() (affects: 1)" [Undecided,New] https://launchpad.net/bugs/522489


[00:40] <Keybuk> sadmac: I'll digest it over the next day or so, but that looks ... inspired
[14:35] <Keybuk> sadmac: around?
[14:54] <sadmac> Keybuk: ya?
[14:56] <Keybuk> sadmac: so what I think you're doing here, after a quick glance, is placing a second "iterator head" in the linked list immediately after the node being iterated
[14:56] <sadmac> immediately before
[14:56] <Keybuk> before?
[14:56] <sadmac> yes
[14:56] <Keybuk> ah, that explains why it's more complicated than I expected
[14:56] <sadmac> we're always operating on the node after the "cursor" element
[14:57] <sadmac> hmm, after would make a few things easier....
[15:03] <sadmac> I need to get on campus, but I should be online in a couple minutes.
[15:03] <sadmac> brb.
[15:04] <Keybuk> yeah, just thinking about the difference
[15:04] <Keybuk> I'd thought about putting the cursor after, since then the node to return is cursor->prev and the next node to visit is cursor->next
[15:04] <Keybuk> and the worst they can do is remove all of the nodes
[15:04] <Keybuk> in which case, cursor->next is the list head, which will end the loop
[15:05] <Keybuk> if they remove the next node, that just means cursor->next is different
[15:05] <Keybuk> if they remove the visiting node, that just means cursor->prev is different - but we don't even look at that on the loop iteration
[15:06] <Keybuk> the bug is caused by "caching" the next node, so the visiting node can be removed
[15:07] <Keybuk> which means if you remove the next node as well, the cache dereferences free'd memory
[15:07] <Keybuk> by using a cursor element, we only ever cache the cursor, which in theory the code in the loop knows nothing about
[15:07] <Keybuk> --
[15:07] <Keybuk> cursor after does mean that if new nodes are inserted after the visiting node, they will not be visited
[15:07] <Keybuk> not sure if that's a feature or not
[15:07] <Keybuk> cursor before means that new nodes inserted after *are* visited
[15:08] <Keybuk> but also, strangely, new nodes inserted before might be visited too
[15:08] <Keybuk> except you have a more complicated "step the cursor" case
[15:08] <Keybuk> and I'm not sure that "step the cursor" is robust if nodes are inserted before the visited node
[15:08] <Keybuk> in fact, I have a slight feeling that you'll visit the node twice
[15:08] <Keybuk>   C-V-X on beginning of loop, becomes
[15:09] <Keybuk>   C-A-B-V-X on end of loop
[15:09] <Keybuk> you'll see that C-next is not V, so won't step the cursor
[15:09] <Keybuk> so will visit A, B then V again
[15:09] <Keybuk> cursor after is safe from that
[15:09] <Keybuk>   V-C-X becomes V-A-B-C-X or A-B-V-C-X
[15:09] <Keybuk> in neither case will A or B be visited in that iteration
[15:27] <sadmac> hm
[15:31] <sadmac> we could mark the cursor as special, either with a flag or by checking the address, and then modify the insert functions to behave as we'd expect.
[15:32] <sadmac> so V-C-X becomes A-B-V-C-X or V-C-A-B-X
[15:32] <Keybuk> I can't decide whether it's a good thing or not ;P
[15:32] <Keybuk> if it works with insert() you'd kinda expect it to work with insert_before() too
[15:33] <sadmac> the assumption from the "user" is that the list is being iterated linearly.
[15:33] <sadmac> before the visited node is not in the damage path
[15:33] <sadmac> after is
[15:33] <Keybuk> there's an even more fun way of doing it
[15:34] <Keybuk> actually, no, that's the same way you're trying to do it, sorry
[15:34] <sadmac> heh
[15:34] <Keybuk> I was thinking of actually removing the visited node, and use the cursor as a list head only
[15:34] <Keybuk> but that has exactly the same semantics anyway
[15:36] <sadmac> having nodes inserted after the visited node get iterated and before not is how it would work in the "oracle" case, where we just could divine where we were in the list by magic.
[15:36] <Keybuk> err, that wasn't english?
[15:37] <sadmac> putting it another way:
[15:37] <sadmac> X-A-X-X-X-V-X-X-B
[15:38] <sadmac> ^if we're at V, and we just inserted A and B, we'd expect A not to get visited and B to get visited
[15:38] <sadmac> that's what regular old NIH_FOREACH would do
[15:38] <Keybuk> right
[15:38] <sadmac> so we should emulate that behavior
[15:39] <sadmac> we want to visit things inserted after, but not things inserted before
[15:39] <Keybuk> agree
[15:40] <sadmac> so the way to do that is if a node is before a cursor and we try to insert_after, to insert after the cursor instead of right after the node
[15:41] <suihkulokki> is there some plan to add dh_installevent style helper
[15:41] <sadmac> suihkulokki: I have no idea what that is
[15:42] <suihkulokki> that's a debianism
[15:42] <sadmac> that'd do it
[15:42] <Keybuk> suihkulokki: no, none
[15:42] <suihkulokki> Keybuk: do you think it would be a good idea?
[15:43] <suihkulokki> this is the third package i'm adding a native upstart event file and I'm noticing a pattern ;)
[15:44] <sadmac> suihkulokki: who knows what the pattern will look like next release though ;)
[15:46] <Keybuk> suihkulokki: I do not think dh_ anything is a good idea
[15:46] <Keybuk> what's wrong with just shipping the file as a conffile?
[15:49] <suihkulokki> the point is just to cut down the lines written to each debian/rules file
[15:49] <Keybuk> sadmac: of course, I forgot that nih_list is kinda backwards
[15:49] <Keybuk> nih_list_add actually adds before :p
[15:49] <Keybuk> it's only nih_list_add_after that's special
[15:49] <sadmac> Keybuk: right
[15:50] <Keybuk> suihkulokki: why do you need any lines in debian/rules?
[15:50] <Keybuk> sadmac: so you have to try very hard to get the node *after* the one you're looking at
[15:50] <Keybuk> and because you tried hard, you're likely to expect that it gets iterated
[15:51] <sadmac> Keybuk: so in order to dtrt we need to be able to tell cursors from normal elements
[15:51] <sadmac> Keybuk: and we can do that one of 2 ways
[15:51] <sadmac> Keybuk: 1) the obvious way: add a field to the element with a flag
[15:51] <Keybuk> expensive
[15:52] <Keybuk> 64 bits! for a 1 bit flag
[15:52] <sadmac> Keybuk: 2) The evil way: check the address. If its allocated on the stack, its a cursor. if its in heap, its not
[15:52] <Keybuk> list elements can be alocated on the stack
[15:52] <sadmac> you're only technically right, I don't think they ever /are/
[15:52] <Keybuk> yeah they are
[15:52] <sadmac> but, hence the evil
[15:53] <sadmac> hm
[15:53] <sadmac> we need darker magic
[15:53] <Keybuk> parse_job.c has one
[15:53] <Keybuk> parse_job.c:    NihList        stack;
[15:54] <sadmac> that'll do it
[15:54] <sadmac> we could add the flag field, and just come up with lots of ultra cool features so we need more flags :)
[15:55] <sadmac> nih_list_set_flag(list, NIH_EAT_BABIES_AND_KITTENS);
[15:55] <Keybuk> mmm, kittehs
[15:59] <Keybuk> your dual for loop really confuses me :p
[16:00] <Keybuk> this is you trying to do "before and after" code, right? :)
[16:02] <sadmac> yeah
[16:02] <Keybuk> couldn't the "test" part of the outer for loop just be 0 ?
[16:03] <Keybuk> for (NihList cursor = { &cursor, &cursor }, *_iter = nih_list_add_after ((list), &cursor); FALSE; nih_list_remove (&cursor))
[16:03] <Keybuk> something like that
[16:03] <Keybuk> ie. don't set the pointer to NULL, then you don't need to test it
[16:04] <Keybuk> I suspect the compiler will optimise that properly anyway, but it makes it a bit more clear
[16:04] <Keybuk> I don't think you even need _iter in there
[16:04] <Keybuk> except as something to allow you call nih_list_add_after
[16:05] <sadmac> no that won't work
[16:05] <sadmac> then the loop will never run
[16:05] <sadmac> setting to null makes it run exactly once
[16:06] <sadmac> because its not null for the first test
[16:07] <Keybuk> ah, you're quite right
[16:16] <sadmac> Keybuk: I'm going to leave it up to you to figure out how to remove the handler function patch from bzr. Its tangled up in quite a few things.
[16:18] <Keybuk> handler function patch?
[16:21] <sadmac> Keybuk: our previous patchwork fix for a single instance of this error
[16:22] <sadmac> with the marking and sweeping and such
[16:22] <Keybuk> that's easy
[16:22] <Keybuk> bzr diff -r -2..-1
[16:22] <Keybuk> or just bzr diff -r -1..-2 then you don't need -R to patch ;)
[16:23] <sadmac> Keybuk: its tangled with some other changes
[16:23] <Keybuk> ah, so it is
[16:23] <sadmac> Keybuk: its got the change of the dbus timeout to INT_MAX in there, and it also seems you moved some files
[16:24] <Keybuk> something like bzr diff -r before:594.1.2 I think
[16:25] <sadmac> tried that but the patch looked weird
[16:25] <sadmac> I think you renamed nih_dbus_tool.py to nih_dbus_tool in the same timeframe
[16:25] <Keybuk> no, the latter is just made from the former
[16:25] <sadmac> the diff I got back was re-adding the INT_MAX change
[16:26] <sadmac> like it wasn't there before
[16:26] <Keybuk> that merged from you at the same time I think
[16:30] <sadmac> hm
[16:31] <Keybuk> +                       if (_##iter->next == iter) { \
[16:31] <Keybuk> +                       } \
[16:31] <Keybuk> +                       iter = _##iter->next; \
[16:31] <Keybuk> *cough*
[16:31] <Keybuk> shouldn't that last "=" be inside the if? :p
[16:32] <Keybuk> no
[16:32] <Keybuk> sorry
[16:32] <Keybuk> confusing iter and _##iter
[16:35] <Keybuk> you don't need the "tmp" inside though ;)
[16:35] <Keybuk> you know that _##iter->next and iter are the same
[16:35] <Keybuk> +                       if (_##iter->next == iter) { \
[16:35] <Keybuk> +                               nih_list_add_after (iter, \
[16:35] <Keybuk> +                                       nih_list_remove (_##iter)); \
[16:35] <Keybuk> +                       } \
[16:35] <Keybuk> +                       iter = _##iter->next;
[16:37] <Keybuk> in fact
[16:37] <Keybuk> you don't even need it that complicatedf
[16:37] <Keybuk> if (_##iter->next == iter)
[16:37] <Keybuk>         nih_list_add_after (iter, _##iter);
[16:37] <Keybuk> iter = _##iter->next;
[16:42] <Keybuk> yeah
[16:42] <Keybuk> confirmed
[16:42] <Keybuk> your method is unsafe when using nih_list_add ()
[16:43] <Keybuk> if the caller does nih_list_add () on the entry itself, the cursor will be pushed back in the list
[16:43] <Keybuk> it correctly won't step
[16:43] <Keybuk> but will visit the entry twice
[16:43] <Keybuk> not that I can think of any time off-hand where we do that (I tend to call it on the list head), but it's valid - as it's a way of doing sorting and stuff
[16:57] <sadmac> ok
[16:57] <sadmac> so we need to have the cursor after
[16:57] <sadmac> and then add_after needs to have something done to it
[17:01] <Keybuk> cursor afterwards just has opposite problems
[17:01] <sadmac> how so?
[17:01] <Keybuk> it doesn't notice the adds at all :)
[17:02] <Keybuk> I'm actually wondering if there's an evil way of breaking the pointers :p
[17:02] <sadmac> which is half-right
[17:02] <sadmac> not noticing the adds is right for add(before) but not for add_after
[17:02] <sadmac> the latter is fixable
[17:03] <sadmac> hmm..actually you're right. we just need to fix one of the add methods to account for cursors
[17:04] <sadmac> the issue is the cursor getting separated from the iterated node in cases where the iterated node is still in the list
[17:11] <Keybuk> right, we really want to add them after the cursor
[17:14] <sadmac> assuming we switch to cursor after
[17:15] <sadmac> we need to add before the cursor if we keep it as is
[17:15] <Keybuk> right, which means you need to know where they started adding
[17:16] <Keybuk> am thinking
[17:16] <Keybuk> what if iter->next is cursor->next
[17:16] <Keybuk> so the list is slightly broken
[17:16] <Keybuk> (iter->next would normally be cursor)
[17:16] <sadmac> I'm afraid
[17:24] <Keybuk> no, there's no safe way to do that
[17:25] <Keybuk> the only way is to hide the cursor entirely
[17:25] <Keybuk> but then the cursor isn't actually updated
[17:36] <sadmac2> there's one 8-byte solution
[17:36] <sadmac2> we just need to make it smaller
[17:39] <sadmac2> only thing I have so far is put a flag in the MSB of one of the poiters
[17:39] <sadmac2> *pointers
[17:40] <Keybuk> pointers don't have MSBs
[17:40] <sadmac2> they can be made to look as though they do.
[17:43] <Keybuk> no, they can't
[17:43] <Keybuk> you can't fiddle with a pointer, it's in scary undefined territory according to the spec
[17:44] <sadmac2> yeah yeah
[17:44] <sadmac2> this is what I get for reading kernel code
[17:46] <sadmac2> now to class
[19:14] <Keybuk> #define NIH_LIST_FOREACH_SAFE(list, iter)                               \
[19:14] <Keybuk>         for (NihList _##iter = { &_##iter, &_##iter },                  \
[19:14] <Keybuk>                  *iter = nih_list_add_after ((list)->next, &_##iter)->prev; \
[19:14] <Keybuk>              iter != (list) && iter != &_##iter;                        \
[19:14] <Keybuk>              iter = nih_list_add_after (_##iter.next, &_##iter)->prev)
[19:19] <Keybuk> no, that doesn't quite work, since it leaves the cursor in the list
[19:40] <sadmac2> Keybuk: that's what the outer for was for
[20:45] <Keybuk> #define NIH_LIST_FOREACH_SAFE(list, iter)                               \
[20:45] <Keybuk>         for (NihList _##iter##_cursor = { &_##iter, &_##iter },         \
[20:45] <Keybuk>                      _##iter = &_##iter##_cursor;                       \
[20:45] <Keybuk>              _##iter;                                                   \
[20:45] <Keybuk>              nih_list_destroy (_##iter), _##iter = NULL)                \
[20:45] <Keybuk>                 for (NihList *iter = nih_list_add_after ((list)->next, _##iter)->prev; \
[20:45] <Keybuk>                      iter != (list) && iter != _##iter;         \
[20:45] <Keybuk>                      iter = nih_list_add_after (_##iter->next, _##iter)->prev)
[20:45] <Keybuk> #
[20:47] <sadmac2> Keybuk: is it ok to call nih_list_destroy on something stack-allocated?
[20:47] <sadmac2> Keybuk: and either way, why isn't it nih_list_remove?
[20:47] <Keybuk> yeah, it just cuts it out of he list
[20:47] <Keybuk> destroy is cheaper than remove :p
[20:47] <sadmac2> ah
[20:47] <Keybuk> destroy => nih_list_cut ()
[20:47] <Keybuk> remove => nih_list_cut (), nih_list_init ()
[20:48] <sadmac2> yeah
[20:51] <sadmac2> Keybuk: don't you need a * on line 2 before _##iter ?
[20:53] <Keybuk> yes
[21:00] <sadmac2> Keybuk: it looks good. It has the issue of missing insertions that we expected
[21:00] <sadmac2> Keybuk: so its just down to that
[21:03] <sadmac2> adding the flag costs us 64 bits (128 if you allocated it with a free-list-based malloc)
[21:04] <sadmac2> Keybuk: could we use a char for the flag, and then add the gcc flag for struct packing to get rid of the overallocation?
[21:04] <sadmac2> damn, but putting it in an unpacked struct would still round it up again
[21:14] <Keybuk> indeed, very expensive for a single bit flag
[21:19] <sadmac2> Keybuk: we could keep a global list of cursors
[21:20] <Keybuk> that's 64-128 bits each
[21:20] <sadmac2> Keybuk: but only for the cursors
[21:21] <sadmac2> Keybuk: not for /every/ list node
[21:21] <Keybuk> true
[21:21] <Keybuk> you need to check for cursorness on every insertion though
[21:23] <sadmac2> Keybuk: only on insert_after
[21:24] <sadmac2> Keybuk: which as you said is the far rarer case
[21:24] <Keybuk> no, both
[21:24] <Keybuk> nih_list_add (iter->next, entry)
[21:24] <Keybuk> you need to check whether iter->next is a cursor
[21:25] <sadmac2> yeah
[21:25] <sadmac2> the check is one comparison
[21:25] <sadmac2> not a terrible expense
[21:25] <sadmac2> we get a jump when it /is/ a cursor
[21:25] <sadmac2> but other than that its 2 instructions
[21:25] <sadmac2> oh, wait
[21:26] <sadmac2> we're still on the list of cursors idea
[21:26]  * sadmac2 is on to his next, more evil thought
[21:26] <sadmac2> what if we added the flag field, but only when it was a cursor
[21:26] <sadmac2> ?
[21:28] <sadmac2> so when we call nih_list_new, which means we are getting a struct which is not attached to an object, we over-allocate by 64 bits
[21:28] <sadmac2> and write 0xdeadbeafcafebabe /after/ the struct
[21:29] <Keybuk> unreliable
[21:29] <sadmac2> where's the hole?
[21:29] <Keybuk> you don't know that all structs in the list are that long
[21:29] <Keybuk> and you don't know the user isn't using that exact string :p
[21:29] <Keybuk> e.g. the list head is smaller, you'd read unallocated memory
[21:29] <sadmac2> user using the exact string is one in several billion billion
[21:29] <sadmac2> struct not that long isn't possible due to struct member allignment
[21:30] <sadmac2> (well, 32-bit folk get jacked a bit)
[21:31] <sadmac2> we have a different value for cursors, and regular stack-allocated lists have stack space in front of them supplying the bullshit
[21:31] <Keybuk> no, it's entirely possible
[21:32] <Keybuk> I don't like even remote chances
[21:32] <Keybuk> it must only succeed _if_ it's a cursor
[21:32] <Keybuk> not just something that looks like one
[21:32] <sadmac2> better odds? make the value a hash of the prev and next pointers
[21:33] <Keybuk> no
[21:35] <sadmac2> you wouldn't do well in cryptography :)
[21:35] <Keybuk> it must only succeed if it is a cursor, not if it looks like one
[21:35] <Keybuk> and, pointedly, it mustn't crash on the list head <g>
[21:36] <sadmac2> we could set aside some memory at startup, and allocate all cursors in it
[21:36] <sadmac2> then we could check address range
[21:44] <Keybuk> what if you run out of that memory?
[21:44] <sadmac2> get a bigger chunk and rename
[21:50] <sadmac2> Keybuk: the check if on stack method works if we just enforce via documentation
[21:50] <sadmac2> Keybuk: are you sure the example you found was on the stack, not a global?
[22:42] <Keybuk> definitely on the stack