IRC log for #brlcad on 20110330

00:02.52 brlcad adityag: you sure can
00:03.08 brlcad you can submit up to 20 apps total to any number of orgs
00:03.22 brlcad I don't recommend submitting more than three
00:03.32 brlcad focus on quality, not quantity
00:03.53 adityag ok cool thanks
00:03.55 brlcad better to have two really good applications with a strong patch than four crappy applications with a crappy patch ;)
00:05.16 brlcad starseeker: *nod* all string literals are equivalent to the concatenation of them broken up like that
00:05.48 brlcad so you can't use it to get over the 509 char limit in C90, but it is useful if you need to inject comments or assist with layout
00:07.33 CIA-52 BRL-CAD: 03starseeker * r44044 10/brlcad/trunk/src/libged/red.c: Rename to avoid confusion - the point of that regex is to look for anything except whitespace, not whitespace.
00:13.02 starseeker please please please let this be the last of the showstopper red bugs...
00:15.31 brlcad i'm still chasing the logic through for how it was causing that crash in the first place
00:15.59 brlcad for my trace, it was deep in libbn checking if a mat is identity .. so it was bogus memory
00:16.06 brlcad hopefully the zero-init will make that not happen
00:16.50 starseeker nods
00:17.08 starseeker maybe that would explain why the different crash on 10.6 vs. 10.5?
00:19.26 brlcad sure, it's just random memory
00:19.38 brlcad something is wrong with the tree structure
00:19.50 brlcad i'm guessing that the regex fails to parse a matrix, so it never sets the matrix
00:19.58 brlcad then gets to code that attempts to validate the matrix
00:20.10 brlcad and boom
00:20.38 brlcad but you could also get a boom from any of the other fields too, or the tree structure might happen to be a valid previous tree node and you'd get further, etc
00:22.18 brlcad so far, though, I don't see how we've actually fixed a bug yet other than you finding the space in the regex
00:25.38 starseeker one if the if statements was backwards too
00:25.57 starseeker but yeah, neither of those seem to relate directly to that weird issue
00:28.40 brlcad it wasn't though, the return statements was swapped
00:28.47 brlcad unless it was wrong before all of this too
00:28.57 brlcad http://brlcad.svn.sourceforge.net/viewvc/brlcad/brlcad/trunk/src/libged/red.c?r1=43830&r2=43832&pathrev=43832 flipped them
00:34.18 CIA-52 BRL-CAD: 03brlcad * r44045 10/brlcad/trunk/src/ (30 files in 12 dirs): consistently call BU_GETUNION() to allocate a new union tree node and RT_INIT_TREE() to initialize that node instead of setting the magic value directly.
00:36.20 brlcad okay, now to rebuild and see if that makes any difference whatsoever
00:52.05 starseeker brlcad: oh, I was referring to a different one - I think it was wrong to start with
00:54.46 brlcad starseeker: so recap, you can't change the name during red right?
00:57.57 brlcad also, matrix edits during red are not working in my testing, they get ignored
00:58.34 brlcad good/bad news, though .. can't get it to crash
01:00.49 CIA-52 BRL-CAD: 03brlcad * r44046 10/brlcad/trunk/TODO: keep seems to be working, red is no longer crashing but isn't editing matrices either
01:01.03 brlcad at least, keep tested clean on linux
01:09.08 *** join/#brlcad yukonbob (~bch@S0106002129e399fc.ok.shawcable.net)
01:09.18 yukonbob hello, #brlcad
01:11.02 *** join/#brlcad crazy_imp (~mj@a89-182-208-48.net-htp.de)
01:27.03 *** part/#brlcad adityag (~ADITYA@182.237.144.88)
01:57.29 brlcad howdy yukonbob
01:57.54 brlcad starseeker: just noticed that your crash report was on the same tree node member, the matrix
01:58.10 brlcad so undoubtedly related to setting it during red
02:09.48 *** join/#brlcad IriX64 (~kvirc@bas2-sudbury98-1096601295.dsl.bell.ca)
02:26.28 CIA-52 BRL-CAD: 03brlcad * r44047 10/brlcad/trunk/src/libbu/stat.c:
02:26.28 CIA-52 BRL-CAD: treat empty strings the same as null, i.e., a special case similar to NaN
02:26.28 CIA-52 BRL-CAD: implying not a file so never will match true even if stat() might. similarly,
02:26.28 CIA-52 BRL-CAD: for comparing to files, empty strings should never match. (two empty string
02:26.29 CIA-52 BRL-CAD: filenames are not the same file, they are no file).
02:29.38 starseeker brlcad: that's very odd - I was able to edit a matrix earlier today...
02:30.17 starseeker yeah, logic for name change isn't present yet
02:30.30 CIA-52 BRL-CAD: 03brlcad * r44048 10/brlcad/trunk/include/bu.h: document the behavior on empty strings
02:31.25 brlcad k
02:31.36 CIA-52 BRL-CAD: 03brlcad * r44049 10/brlcad/trunk/src/libged/red.c:
02:31.38 CIA-52 BRL-CAD: another attempt at a logic cleanup, this time consolidating the memory cleanup
02:31.38 CIA-52 BRL-CAD: and unlinking of the temp file to one place so that the file is consistently
02:31.38 CIA-52 BRL-CAD: closed. some conditions weren't closing the file. this only modifies ged_red()
02:31.38 CIA-52 BRL-CAD: and shouldn't be a change to flow logic.
02:34.12 starseeker unfortunately, something about the ged string handling results in the error messages from ged_red getting squashed
02:34.27 starseeker I recall Bob saying something about why that was once, but I don't recall
02:34.59 brlcad all part of the refactoring suck
02:35.10 brlcad some ged functions reset the result string, some don't
02:35.23 brlcad so if you have a ged func that calls another ged func, it may or may not reset the result
02:35.30 starseeker ah
02:35.45 brlcad if the clean refactoring was complete, there'd be no need to reset the result in any func
02:36.13 brlcad except the one top-level wrapper executing the main command
02:36.32 brlcad if even then, could be a result array
02:39.29 CIA-52 BRL-CAD: 03starseeker * r44050 10/brlcad/branches/cmake/ (46 files in 19 dirs): MFC r44049
02:39.42 brlcad starseeker: another curiosity, I edited a region with red and it listed rgb and color as an attribute
02:39.55 starseeker both of them?
02:39.57 brlcad looking at the logic in write_comb(), that shouldn't be possible since it's a standard attribute
02:40.01 brlcad yep
02:40.08 starseeker growl...
02:40.34 starseeker it might be doing that if a pre-existing region has both... I don't recall
02:41.02 brlcad fwiw, it was havoc, rt_r.pyl1
02:41.41 brlcad attr show only lists rgb
02:42.25 starseeker if it's pulling color from the comb struct and rgb from attributes that MIGHT do it
02:42.29 starseeker more likely I screwed up
02:42.55 brlcad looks like write_comb() doesn't look at the struct members
02:43.35 starseeker it's probably in the standardization routines then
02:46.15 brlcad curious that you manually list the standard attributes just to get the max length for pretty printing
02:47.38 starseeker brlcad: those routines are certainly candidates for improvement
02:49.22 brlcad if I'm reading the correctly, it looks like it may even potentially update a read-only database
02:49.44 starseeker winces
02:50.02 brlcad ah, it'll try but then get bitched at lower-level by librt
02:50.16 brlcad still.. the in-mem is modified
03:01.40 CIA-52 BRL-CAD: 03brlcad * r44051 10/brlcad/trunk/TODO: note a few of the red issues remaining
03:04.32 CIA-52 BRL-CAD: 03brlcad * r44052 10/brlcad/trunk/src/libged/ (ged_private.h put_comb.c): delims is only used in put_comb.c so it doesn't need to be an extern'd global. same for ged_tmpcomb.
03:05.49 CIA-52 BRL-CAD: 03brlcad * r44053 10/brlcad/trunk/src/libged/red.c:
03:05.49 CIA-52 BRL-CAD: delims was moved to put_comb, not used here. refactor the Combination Tree
03:05.49 CIA-52 BRL-CAD: separator so it's only in one place. put the matching regexp up next to it so
03:05.49 CIA-52 BRL-CAD: changes to one can be reflected in the other, otherwise will be brittle to
03:05.49 CIA-52 BRL-CAD: future edits.
03:07.12 CIA-52 BRL-CAD: 03brlcad * r44054 10/brlcad/trunk/src/libged/red.c: if the regex is going to have the newline, make the separator have it too
03:30.12 CIA-52 BRL-CAD: 03brlcad * r44055 10/brlcad/trunk/src/libged/red.c: ouch. write_comb() needs a rewrite. it's modifying data it should not be modifying at this point in our processing. just asking for trouble.
03:42.08 CIA-52 BRL-CAD: 03brlcad * r44056 10/brlcad/trunk/NEWS: with r44022, richard fixed two memory management issues introduced during a code audit that reduced the size of an allocation after a conversion from bu_malloc to bu_calloc as well as double-free on exit.
03:47.24 CIA-52 BRL-CAD: 03brlcad * r44057 10/geomcore/trunk/src/GS/FileDataSource.cxx: if one iterator needs it, don't they both?
04:00.46 CIA-52 BRL-CAD: 03brlcad * r44058 10/geomcore/trunk/src/GS/ (25 files in 2 dirs): attack of ws indent format consistency. remove useless header metadata.
05:26.37 *** join/#brlcad adityag (~ADITYA@182.237.144.88)
05:41.45 *** part/#brlcad adityag (~ADITYA@182.237.144.88)
06:16.51 *** join/#brlcad d_rossberg (~rossberg@BZ.BZFLAG.BZ)
06:18.19 *** join/#brlcad siddharth__ (~siddharth@117.211.88.150)
06:33.05 *** join/#brlcad Stattrav (~Stattrav@unaffiliated/stattrav)
07:00.27 *** join/#brlcad siddharth_ (~siddharth@117.211.88.150)
07:07.53 *** join/#brlcad siddharth__ (~siddharth@117.211.88.150)
08:51.39 *** join/#brlcad pawleeq (~pavel@pc119.iabrno.cz)
10:21.28 *** join/#brlcad AbhijitKane (~Abhijit@111.93.5.194)
10:58.10 dloman Merin all
11:10.05 *** join/#brlcad siddharth__ (~siddharth@117.211.88.150)
11:21.04 dloman brlcad: Is there some 'good coding practice' that I am unaware of coming to play at FileDataSource.cxx:53 ? Why do we need to incr the iterator if its not going to be used again?
11:28.10 *** join/#brlcad AbhijitKane (~Abhijit@111.93.5.194)
11:34.37 CIA-52 BRL-CAD: 03davidloman * r44059 10/geomcore/trunk/ (include/Portal.h src/libNet/Portal.cxx): Add convenience method for sending a typeonly msg to client.
11:38.14 CIA-52 BRL-CAD: 03davidloman * r44060 10/geomcore/trunk/ (include/DataManager.h src/GS/DataManager.cxx): Stub in BRLCAD::Object <-> GeometryChunkMsg functions. Simplfy Msg handling by using new Portal::sendTypeOnly() method.
12:23.17 brlcad dloman: not really, only if someone came to that block later and turned it into a loop
12:27.43 brlcad I presume that function is incomplete in some fashion?
12:27.43 CIA-52 BRL-CAD: 03brlcad * r44061 10/geomcore/trunk/src/GS/FileDataSource.cxx: not a loop, no need to increment. odd pulling first 'top' object though.
12:27.58 *** join/#brlcad Elrohir (~kvirc@p5B14A416.dip.t-dialin.net)
12:33.11 dloman brlcad: just the way the core interfaces are setup leads to the only real way to arbitrarily get top objects is via an iterator and the only way to get the iterator is to use the TopObjectIterator()
12:33.39 dloman when i have the time, i plan on expanding the ConstDatabase/Database/MemoryDatabase functionality.
12:34.40 dloman getObj() assumes you only want 1 object, and that's because in our design, many of the .g files in the repo are going to only have 1 object.
12:37.10 dloman FFA question: If i want to use memcpy to copy to a char*, but start at the 5th char into the array, can i word it like: memcpy(dest+4,src,length) ?
12:38.32 brlcad I saw getObj as give me any object from a .g, not necessarily a top object
12:39.26 brlcad and yes re. memcpy
12:41.08 dloman the coreInterface classes don't allow you to directly get an object with out knowing its (string) name, and there is no way to get that name unless you iterate, starting at the top.
12:42.09 dloman tree walking to build an array of Objects hasn't been implemented yet, but thats ultimately what getObjs will do.
12:42.17 brlcad sure, that's the same with librt too
12:42.20 dloman likely get to that today.
12:42.30 brlcad that getObj() routine sounds like a routine to get a specific named object
12:43.40 dloman the fn documentation will come soon, no worries.
12:43.43 brlcad so if it has the name, there should be no involvement of TopObjectIterator()
12:44.43 brlcad heh, so fix the problem by changing the function definition? .. the name alone implied that (which is a good thing)
12:46.29 dloman dude, its a name. can be changed at any time. small potatoes at this point, especially when everything isn't solidified quite yet.
12:47.47 brlcad of course, that's expected
12:47.53 brlcad just looking for clarification
12:48.31 brlcad trying to work on the code too, and if that's not a function that gets an object by name, then that obviously changes things
12:49.42 brlcad if it is supposed to get an object by name, which is what seemed the more plausible (and useful) .. then the implementation didn't seem right
12:50.06 dloman getObj() gets the single object at the repo 'path'
12:50.21 dloman getObjs() gets multiple object at the repo 'path'
12:51.10 dloman after implementing things now, it seems the use of getObj is nearly nothing, since getObjs can perform the same funciton by returning a list with one element.
12:51.22 brlcad nods
12:51.29 brlcad okay, that makes more sense then
12:51.34 dloman performance and memory wise i am sure they are different.
12:51.38 brlcad meh
12:51.44 dloman but im just going to leave them both for now
12:52.15 brlcad seems error prone to allow a getObj when there may be more than one object to randomly be given "the first one"
12:53.59 dloman exactly why im thinking its going to go away soon, provided some profound reason to keep it.
12:54.58 brlcad now a general getObj() that returns a specific object by name would be more useful
12:55.16 brlcad but that gets into what you've named a path there and how that differs from a geometry path
12:55.51 brlcad something to talk about later perhaps
13:22.15 CIA-52 BRL-CAD: 03brlcad * r44062 10/brlcad/trunk/src/librt/db5_types.c:
13:22.15 CIA-52 BRL-CAD: add a new routine that will return a standard attribute name by an index number,
13:22.15 CIA-52 BRL-CAD: so that we have a way to iterate over all the standard attribute names. this
13:22.15 CIA-52 BRL-CAD: simplifies db5_is_standard_attribut() iteration and lets us reuse the iteration
13:22.15 CIA-52 BRL-CAD: elsewhere.
13:27.37 CIA-52 BRL-CAD: 03brlcad * r44063 10/brlcad/trunk/src/librt/db5_types.c: swap los and air so that the index coincidentally matches the ATTR_* returned from db5_standardize_attribute()
13:31.49 dloman d_rossberg: are you around?
13:34.42 CIA-52 BRL-CAD: 03brlcad * r44064 10/brlcad/trunk/src/librt/db5_types.c: even better, make the index-based lookup exactly match the ATTR_* index value. convert to an enum for proper numeric indexing.
13:38.18 CIA-52 BRL-CAD: 03brlcad * r44065 10/brlcad/trunk/src/librt/db5_types.c: document the need for these needing to not have gaps in their value. only specify the starting point to make is less error prone. add null case so gcc thinks we're covering all our bases.
13:50.36 CIA-52 BRL-CAD: 03brlcad * r44066 10/brlcad/trunk/src/librt/db5_types.c: simplify db5_standardize_attribute() by unrolling the loops. we have to perform all the comparisons anyways until we get a match, so just list them.
13:54.48 dloman d_rossberg: I'm having an issue with a Database.Get() call.
13:55.34 dloman whenever i get an Object using .Get(), the object's internal db_i* and diectory* are NULL.
13:56.11 CIA-52 BRL-CAD: 03brlcad * r44067 10/brlcad/trunk/src/librt/db5_types.c: shorten to attr
13:58.37 dloman ConstDatabase::Get(char*)->ConstDatabase::get(char* ObjectCallback)->ObjectCallbackIntern::operator()->Arb8::Clone()->Arb8::Arb8->Object::Object->Object::Copy()
13:58.41 dloman thats the stack trace
13:59.20 dloman I don't ever see the m_dbip, m_pDir, or m_ip get copied.
13:59.24 dloman ...is that by design?
14:01.18 brlcad starseeker: can you help? what is db5_standardize_avs() supposed to do? I don't understand the comment
14:01.57 starseeker brlcad: one sec...
14:03.47 CIA-52 BRL-CAD: 03starseeker * r44068 10/brlcad/branches/cmake/ (6 files in 3 dirs): MFC r44067
14:04.17 starseeker hrm... yeah, looks like brain backfired on that comment
14:04.21 starseeker checks code...
14:05.20 starseeker OK, I think this was the thinking...
14:05.30 brlcad see if that says it
14:05.34 CIA-52 BRL-CAD: 03brlcad * r44069 10/brlcad/trunk/src/librt/db5_types.c: update comment for db5_standardize_avs(). is my understanding correct?
14:06.14 starseeker yeah, that's pretty much it
14:06.41 starseeker I think it might remove the old attribute that it's replacing with the new one, but will leave additional matches alone
14:06.45 starseeker let me check that though
14:07.08 brlcad yeah, I was thinking it should remove all the matches
14:07.25 starseeker the problem with that is if an existing comb has both color and rgb
14:07.29 starseeker with different values
14:07.41 brlcad sure, but what does that mean?
14:08.06 starseeker who knows? but picking one means destroying one of the color settings, if we erase both of the old ones
14:08.41 starseeker yesh, looks like that one isn't doing any erasing
14:08.47 starseeker so your comment is right
14:08.50 brlcad okay,that's cool
14:09.05 brlcad i'd think we'd either wipe them all out with the new or leave them all intact and add new
14:09.30 brlcad we don't know what that data is but technically "we own it" because it's in the reserved namespace
14:09.37 starseeker nods - that MIGHT be why you were seeing multiple color settings on that havoc region...
14:09.51 brlcad possibly
14:10.12 brlcad though later in red, you go through the whole update/apply thing that should have consolidated
14:10.17 brlcad maybe
14:10.28 brlcad hello hyarion
14:10.57 hyarion hi
14:11.52 d_rossberg dloman: see the docu of Get() in ConstDatabase.h: this method returns a copy of the object
14:12.09 dloman the copy is disconnected from any database then?
14:12.15 dloman ...by design?
14:12.18 d_rossberg this seams to be a good idea because you close the database after each operation ;)
14:13.02 dloman righto, that part is sensible.
14:13.26 dloman just want to make sure I'm understanding your code correctly.
14:14.48 d_rossberg the deeper reason is the following:
14:16.27 d_rossberg rt_db_get_internal() (as used in the Get()) always gives you a copy of the database object on a rt_db_internal structure
14:17.39 d_rossberg therefore you have to carefully choose the moment when to write back rt_db_internal into the database
14:17.49 starseeker brlcad: yeah, it looks like what's happening is db5_update_std_attributes is ensuring that all of the standard attributes correspond to the comb structure values - in the process, it's creating any that aren't already there (like color in the case of rt_r.pyl1)
14:18.47 d_rossberg i'm doing it usually when the callback returns (see the callback version of Get())
14:19.21 d_rossberg i.e. the non-const Get() in Database.h
14:19.32 starseeker but since I was trying to go with the "don't destroy information" policy, rgb got left
14:20.46 brlcad that's great
14:21.04 brlcad defaulting to don't destroy is always right :)
14:21.20 d_rossberg another possibility is to take a copy of the Object explicitely (as you did) and leave it to the user to write it back to the database with Set()
14:21.41 starseeker also, I don't think db5_apply_std_attributes will remove excess extra settings...
14:21.48 starseeker so that part of the comment may need updating
14:21.53 brlcad k
14:22.17 starseeker we can make a function to do that, but I'd prefer it to be a separate call so the decision to possibly destroy data is isolated
14:22.17 brlcad i'm simplifying standardize_avs() a bit now, given there's a function that will return the name by type
14:22.23 starseeker cool
14:22.35 brlcad reduces almost all of the cases to just add
14:22.47 d_rossberg or for short: Object is the C++ form of rt_db_internal which contains a copy of an database element
14:23.06 starseeker now remember why that took so long... lots of annoying little questions to sort out...
14:23.37 *** join/#brlcad Stattrav (~Stattrav@117.192.156.60)
14:23.37 *** join/#brlcad Stattrav (~Stattrav@unaffiliated/stattrav)
14:23.59 dloman d_rossberg: awesome, thanks man. I figured out that in order to properly extract a bu_external from an Object, i should use an ObjectCallback
14:24.34 starseeker brlcad: probably the correct thing to do is if there is just one color attribute (e.g. rgb) it should get renamed
14:24.40 starseeker so that may be a bug
14:25.04 brlcad hm
14:25.19 starseeker I thought I had some "first hit for type T" logic that would rename, but maybe I took it out as too complicated in the inital cut
14:25.32 brlcad it's half in there :)
14:25.37 brlcad some of the types don't use it
14:25.50 starseeker ah, crud
14:26.02 d_rossberg dloman: btw: Object has full attribute support including iteration
14:26.44 starseeker we can get fancier by checking the value of subsequent hits of the same type against the stored standard type, and only keep them (and display them) if they're different
14:27.05 brlcad still, I see this as an in-memory "upgrade my avs" routine .. so it can convert any it finds, consolidate any that are the same value, and otherwise rename the first to standard form
14:27.06 starseeker that's probably the best case - preserve and display conflicting data if it actually conflicts, otherwise standardize
14:27.22 starseeker er, yeah :-)
14:33.24 brlcad had a memory leak in there bu_avs_add() already copies the value for you
14:33.49 starseeker ah
14:34.02 CIA-52 BRL-CAD: 03starseeker * r44070 10/brlcad/trunk/include/raytrace.h: Update db5_is_standard_attribute in raytrace.h
14:39.13 CIA-52 BRL-CAD: 03starseeker * r44071 10/brlcad/trunk/src/libged/red.c: fix red.c extern too
14:40.29 d_rossberg dloman: ps: this way you can copy an Object from one database to another: Get() from the first one and Add() to the other one
14:40.53 dloman excellent
14:41.14 dloman I am actually looking to properly create a bu_external, which requires a valid db_i* and directory*
14:41.59 brlcad dloman: only that one routine required a db_i, there are other routines that work with data in other stages of the i/o process
14:42.13 brlcad might be something else that can be used
14:42.33 brlcad looks
14:45.38 brlcad what data do you have now?
14:45.47 brlcad an rt_db_internal *?
14:47.08 dloman well, if hook into ab Object before it gets .Clone()-ed, then i will have everything (db_i, rt_db_internal*, resource* and directory*)
14:47.16 dloman otherwise, i have none of those.
14:47.46 brlcad none? if it made a copy, you ahve at least the rt_db_internal I'd think
14:48.00 d_rossberg dloman: for low level operations you should consider to use the C API directly, the C++ interface is definitely not the place for such tasks
14:49.10 d_rossberg no, he has nothing because the database will be closed after getting the object
14:49.30 brlcad d_rossberg: we could still encapsulate serialization as something inherent to an Object, a Serialize() routine that returns a bu_external for example
14:50.17 brlcad d_rossberg: then how'd it 'get' the object? extracts values into private member data from the db_intern?
14:52.25 d_rossberg it has a private char* for the name, bu_attribute_value_set for the attributes and rt_~_internal for the element specific stuff
14:53.10 brlcad ah, so it fully uncracks the rt_db_internal
14:53.19 d_rossberg and serialization isn't trivial, it depends on the protocol used and purpose
14:53.51 d_rossberg e.g. i would prefer a serialization in xml
14:54.10 brlcad heh
14:54.36 d_rossberg or with other words: this is something for the level above the core interface
14:55.34 brlcad and/or below it
14:56.24 brlcad i could still see it providing some default serialization capability that it could use for persistence and reconstruction
14:56.26 d_rossberg for the network my first idea would be to use something like corba
14:57.13 brlcad but that's so much overhead ...
14:57.45 brlcad and nobody likes writing corba code :)
14:58.00 d_rossberg this point is on you :)
14:58.01 brlcad except businesses that are paid/forced to :)
14:59.15 *** join/#brlcad Elrohir (~kvirc@p5B14A416.dip.t-dialin.net)
15:01.27 dloman who knew the Dune soundtrack makes cood coding music.....
15:02.18 d_rossberg however, the "default serialization" should >mainly< (whatever this will mean) be database independend because it is used in an abstraction layer
15:03.21 brlcad yeah, I'd think you'd want it to be a black box serialization
15:04.11 brlcad either to a generic form (like xml, shudder!) or to an opaque type that you aren't supposed to inspect beyond passing to a Deserialize() call
15:04.47 brlcad I was thinking more the latter and just ganging up on the existing serialization routines used for disk since they're compact and really fast
15:05.29 starseeker yeah... I thought the external disk format was a serialization - is there some situation where that's not appropriate?
15:05.45 starseeker xml I can see only as an archival ascii format (maybe)\
15:05.54 brlcad starseeker: it's "not appropriate" if you don't want to deal with binary data :)
15:06.06 starseeker ah heh
15:06.20 brlcad or want to pass it through some other parsing engine
15:06.49 brlcad converting to asc is technically a serialization too, just a not very interesting one
15:07.42 d_rossberg it is the most interesting one: ican read it
15:08.02 brlcad how about json then? even easier to read ;)
15:08.14 brlcad and less verbose
15:08.18 d_rossberg json who?
15:08.20 brlcad runs and hides
15:08.40 dloman should I call BU_INIT_EXTERNAL on a bu_external prior to passing the bu_external into db_get_external(..) ?
15:09.16 d_rossberg wasn't there a windows ini-file format?
15:09.53 brlcad dloman: not necessary
15:10.11 brlcad d_rossberg: heh, now you're just talking crazy ;)
15:10.50 brlcad that's about as bad as a self-unarchiving shell script
15:12.44 starseeker d_rossberg: http://www.json.org/
15:13.33 starseeker http://oss.metaparadigm.com/json-c/ would probably be useful
15:13.46 brlcad I think he was being facetious
15:13.52 starseeker ah
15:19.27 starseeker brlcad: fwiw, a comb with only one entry and a matrix on that entry DOES allow me to save the change
15:19.44 starseeker it's where there are multiple entries in the comb tree with matricies that I can confirm the failure
15:19.52 brlcad okay
15:23.12 dloman anyone familiar with a Segfault dealing with _dl_fixup() in /lib64/ls-linux-x86-64.so.2 ?
15:29.12 *** join/#brlcad packrat (~packrator@99-67-225-40.lightspeed.livnmi.sbcglobal.net)
15:29.26 brlcad er... ld is trying to dynamically load something and it can't?
15:29.39 brlcad shouldn't be any dynamic loading that I know if
15:30.05 dloman i hate this crap :/
15:30.35 brlcad what'd you change that got you into that state?
15:31.03 brlcad just back up to the previous commit, work forward in smaller steps
15:31.13 dloman i literally copy/pasted a class, changed the guts of one function.
15:32.59 brlcad are you using run-time type inference?
15:33.06 brlcad in that class
15:34.30 dloman i don't think i am
15:34.57 dloman noob question: is subclassing considered type inferencing?
15:35.30 brlcad then it "probably" was more than a simple copy/paste change, even if that's all you may have intended ..
15:35.57 brlcad in general no, but subclassing a class that uses rtti might get you into trouble
15:35.58 dloman heh, obviously something got messed up. :/
15:36.58 brlcad without sitting at a debug console, "back it up" is probably the easiest debug route to see where you went wrong
15:37.33 dloman i've got it isolated down to a function call, but it doesnt make sense atm. still trying to figger it out.
15:37.44 brlcad that error sounds like the dynamic linker saying "I can't find a class I'm told to use"
15:39.45 dloman hrm, if I comment out the call to db_get_external(), everything works .....
15:40.13 brlcad are you linking librt?
15:40.46 brlcad could be a bonefide crash due to bad data or bug and the _dl_fixup is just a red herring
15:48.33 brlcad starseeker: I think I see how the attibute got double-listed
15:48.55 brlcad rewriting db5_standarize_avs() is pretty tricky with all of the various cases
16:05.25 dloman so its not a linker issue... i'm linking ALL of brlcad libraries.
16:05.46 dloman but _dl_fixup is throwing the segfault, according to gdb
16:11.41 dloman brlcad: you still around?
16:14.35 brlcad yep
16:15.00 brlcad where's it segfaulting, what's the rest of the stack?
16:15.04 dloman Pro tip: Turns out that bu_malloc is handy for allocating memory for pointers.
16:15.09 dloman just fyi
16:15.14 dloman facepalms
16:15.24 brlcad haha
16:15.33 brlcad bu_calloc() is even better
16:15.43 dloman yeah, whats the diffference?
16:15.48 brlcad zeros the memory
16:16.10 dloman costs a bit more cpu time?
16:16.15 brlcad malloc will allocate you a memory buffer, but there could be any random garbage in that buffer
16:16.28 brlcad insignificant
16:16.49 dloman so there really is no reason to ever use anything other than calloc?
16:16.53 brlcad the system call itself is two orders more expensive, so might as well spend one or two clock cycles and have fresh zero'd memory
16:17.31 brlcad well, if the very first thing I was going to do with the memory was clear it or set it, then bu_malloc makes sense
16:18.01 brlcad but talking full-allocation set, which doesn't happen very often
16:19.30 brlcad basically, if you want to be a little more cautious and avoid some obscure bugs, use bu_calloc() until you know better :)
16:20.00 brlcad it's never "wrong", it just might be unnecessary
16:20.04 dloman bugs like me, thus i like calloc
16:20.31 brlcad it's like initializing all your variables when you declare them
16:20.38 dloman right on
16:20.39 brlcad I tend to init to zero and/or NULL
16:20.52 brlcad but if the very next thing I'm going to do with them is set their value, it was pointless
16:21.19 brlcad if I don't set their value until later down in the function, it might actually save my butt some day to init them
16:21.29 brlcad it might save me down the road anyways if I just init them
16:22.15 brlcad starseeker: if you care to double-check my logic on this, I think I have it
16:24.12 CIA-52 BRL-CAD: 03davidloman * r44072 10/rt^3/trunk/ (4 files in 2 dirs): Added the ability to get a bu_external* from a ConstDatabase and Object. Needed for serialization
16:25.42 CIA-52 BRL-CAD: 03brlcad * r44073 10/brlcad/trunk/ (include/raytrace.h src/librt/db5_types.c):
16:25.42 CIA-52 BRL-CAD: document the db5_standard* functions, pulling comments from source to header and
16:25.42 CIA-52 BRL-CAD: expanding with a note that they're new/private. reimplement
16:25.42 CIA-52 BRL-CAD: db5_standardize_avs() using simple two-pass logic so standard attributes take
16:25.42 CIA-52 BRL-CAD: precedence. use db5_standard_attribute() in conjunction with
16:25.42 CIA-52 BRL-CAD: db5_standardize_attribute() in leu of tables so we don't have to repeat any
16:25.43 CIA-52 BRL-CAD: values or even be aware of what is standard or not.
16:25.47 brlcad that should prevent the double-listing
16:46.50 *** join/#brlcad Stattrav (~Stattrav@117.192.156.60)
16:46.50 *** join/#brlcad Stattrav (~Stattrav@unaffiliated/stattrav)
17:15.22 starseeker brlcad: looks good
17:25.02 CIA-52 BRL-CAD: 03davidloman * r44074 10/geomcore/trunk/ (7 files in 4 dirs): Clean up a few bugs in ByteArray. Added ByteArray copy cstr. Converted GenericMultibyteMsg and GeometryChunk to use ByteArray objects (since they are thin wrappers around bu_vls)
17:26.32 CIA-52 BRL-CAD: 03starseeker * r44075 10/brlcad/trunk/src/libged/red.c: Looks like this might be the culprit - combtree_op_regex with blank seems to work for matricies
17:27.04 starseeker brlcad: does that let you edit matricies?
17:43.19 CIA-52 BRL-CAD: 03erikgreenwald * r44076 10/brlcad/trunk/src/libged/red.c: include raytrace.h for prototype. remove extern func decl
17:52.42 CIA-52 BRL-CAD: 03davidloman * r44077 10/geomcore/trunk/ (include/DataManager.h src/GS/DataManager.cxx): put in bu_external<->GeometryChunkMsg conversion functions.
18:06.54 CIA-52 BRL-CAD: 03davidloman * r44078 10/geomcore/trunk/include/GeometryChunkMsg.h: Forgot a file in the ByteArray cleanup....
18:20.15 brlcad starseeker: testing
18:24.26 starseeker brlcad: I see you listed red comb renaming as something to support for the next release?
18:25.10 brlcad with all this attention needing to go towards red, might as well finish it while it's all in context
18:25.33 brlcad otherwise it'll never get done unless there's another set of bugs
18:25.36 starseeker so we should make write_comb work on copies as well?
18:26.17 brlcad yeah, I was basically reviewing from top to bottom
18:26.48 brlcad got to the attr stuff, and a bit more to finish up in there
18:27.40 brlcad sorting out what this std avs api should look like now
18:29.05 brlcad if you want to hit up write_comb in the meantime, you're welcome to but might be less conflict if you work either on recognizing the name change or making sure the read-in is robust
18:29.28 starseeker is working on the rename
18:30.04 brlcad basically just trying to get things to a no-hack "done" state without adding any new functionality/features
18:30.48 brlcad nice work on the std avs stuff by the way -- the functions work pretty well together
18:30.57 brlcad just that one missing so far, and maybe some name cleanup
18:31.12 starseeker thanks :-)
18:32.07 CIA-52 BRL-CAD: 03brlcad * r44079 10/brlcad/trunk/include/raytrace.h: add the other 'new' attr funcs that are needed for the symbols to get published. still a work-in-progress.
18:32.49 CIA-52 BRL-CAD: 03brlcad * r44080 10/brlcad/trunk/include/raytrace.h: private funcs till names get changed
18:32.59 starseeker is there a case-insenstivie version of the bu string comparison macro?
18:33.54 brlcad we use something in a few other places, maybe strcasecmp
18:35.48 brlcad yeah, we surprisingly don't do a lot of string-insensitive comparisons
18:35.59 brlcad libfb options
18:39.08 brlcad might be simple enough to add a BU_STRI_EQUAL and friends
18:39.40 brlcad or BU_STRCASE_EQUAL
18:45.16 brlcad starseeker: the other thing I wanted to change .. you have all that logic in write_comb for pretty-printing, but standard printf has options that do most of that built-in
18:48.32 *** join/#brlcad AbhijitKane (~Abhijit@111.93.5.194)
18:49.16 AbhijitKane brlcad: do you have any info on the old material database / website?
18:52.12 brlcad AbhijitKane: yes, I do
18:52.13 CIA-52 BRL-CAD: 03erikgreenwald * r44081 10/geomcore/trunk/src/interfaces/cl/gsclient.lisp: Flush output buffer at end of msg write. Implement implement ping, info, fail, ok, rualive and imalive.
18:52.52 AbhijitKane brlcad: i've started with a draft proposal, and was wondering what i could add to it
18:58.39 kunigami hi, which string should be passed to bu_malloc and bu_free?
18:59.17 ``Erik anything that explains what the memory is for, it's to help in debugging
19:00.34 brlcad AbhijitKane: the existing dev interface is at mater.brlcad.org
19:00.56 starseeker brlcad: ah, figures
19:01.16 AbhijitKane nods
19:01.24 starseeker wades into the rename logic...
19:01.31 kunigami ok. I'll pass the name of the first pointer for which the memory is being allocated
19:01.36 starseeker let there be build failures!
19:02.04 brlcad kunigami: just something short but descriptive "alloc foo", "free foo"
19:02.35 brlcad the bu_calloc/bu_malloc string should pair up with the bu_free() string
19:03.15 brlcad not necessarily the same string, but if you were reading a log file, some reasonable pairing so you could check the pairings if you needed to
19:04.26 kunigami hmm what if I allocated in bu_basename as bu_malloc(..., "foo"), then I tell in the documentation that bu_free(..., "foo") should be called?
19:05.09 brlcad not necessary
19:05.39 brlcad maybe "bu_basename alloc"
19:08.40 kunigami then bu_free(..., "bu_basename free")?
19:10.39 brlcad well the free happens in userland code, not library code so you don't really have any control over that
19:14.26 kunigami hmm, understood. so I'll just do bu_free(var, "var free"). sounds good?
19:15.33 brlcad kunigami: but where are you calling bu_free?
19:15.57 AbhijitKane brlcad: regarding the materials site, could there be google/openID integration as well?
19:15.57 AbhijitKane <PROTECTED>
19:16.27 kunigami right before the scope of the variable returned by bu_basename ends
19:16.28 CIA-52 BRL-CAD: 03davidloman * r44082 10/geomcore/trunk/src/libNet/NetMsgRouter.cxx: Use the word 'routing' instead of 'forwarding' when talking about the routing of NetMsgs. Confused some people, this is better.
19:16.32 brlcad AbhijitKane: the issue there is we presently have accounts in drupal and mediawiki ... there was an effort to integrate them into one ldap but that's incomplete
19:17.35 brlcad adding in google/openID adds more account auth but doesn't integrate with the other two, so not much of a benefit integration-wise
19:17.52 brlcad now if you also update our drupal/MW installs to use google/openID, then that'd be different
19:18.07 brlcad could be a little subtask
19:18.59 AbhijitKane ok
19:19.00 brlcad otherwise, auth is a much lesser concern to getting add/edit/inherit/view/delete working cleanly
19:20.14 AbhijitKane yes, getting the crud operations working properly will be the first priority
19:20.57 brlcad crud? :)
19:22.30 AbhijitKane create read update delete. but i'm not sure whether i'm using it in the right context, lol
19:22.36 CIA-52 BRL-CAD: 03Erik 07http://brlcad.org * r2781 10/wiki/NetMsgTypes: add more info
19:23.48 kunigami in brlcad_path.c there's a line: return bu_basename(bu_progname); --- where bu_progname is a global variable. how to proceed?
19:24.27 CIA-52 BRL-CAD: 03Erik 07http://brlcad.org * r2782 10/wiki/GeometryReqMsg: New page: Message sent to the server to request data. Single GSString with a URI/URN style encoding of the geometry (path/to/file.g/top). (Should this be a multistring message?)
19:26.27 brlcad kunigami: probably something similar to bu_argv0_full_path() where it has an internal static buffer, get the basename, copy into buffer, free the basename, return the buffer
19:27.42 CIA-52 BRL-CAD: 03Erik 07http://brlcad.org * r2783 10/wiki/GeometryManifestMsg: New page: Sent after a geometry req is recv'd, but before the chunks are sent. uint32 number of objects/strings/chunks. List of GSStrings for returned objects. ReUUID is the same as the GeometryR...
19:30.24 CIA-52 BRL-CAD: 03Erik 07http://brlcad.org * r2784 10/wiki/GeometryChunkMsg: New page: Actual raw binary V5 .g goodness. ReUUID is the same as the associated GeometryReqMsg's UUID. There will be the same number of these as there were entries in the GeometryManifest. NOT ...
19:31.41 CIA-52 BRL-CAD: 03Erik 07http://brlcad.org * r2785 10/wiki/GeometryChunkMsg: mention length in stream
19:33.24 kunigami brlcad: hmm good idea
19:33.35 CIA-52 BRL-CAD: 03starseeker * r44083 10/brlcad/trunk/src/libged/red.c: Add the ability for changing name assignment in the red.c text file to rename the comb being edited.
19:33.41 starseeker brlcad: there we go
19:33.50 brlcad starseeker: awesome
19:34.22 brlcad btw, just found (and hopefully fixed) a particularly egregious bu avs iterator bug
19:34.23 starseeker needs another set of eyes, but it seems to work here
19:34.39 starseeker in red or in libbu?
19:34.45 brlcad libbu
19:34.50 starseeker ow
19:34.58 brlcad the BU_AVS_FOR() macro iterates from the end to the front, from count-1
19:35.08 brlcad so if count == 0 ... poof
19:35.14 starseeker winces
19:35.31 starseeker yeah, that's not good...
19:38.04 CIA-52 BRL-CAD: 03starseeker * r44084 10/brlcad/trunk/TODO: r_weiss fixed dem-g crashes
19:38.14 CIA-52 BRL-CAD: 03brlcad * r44085 10/brlcad/trunk/include/bu.h:
19:38.14 CIA-52 BRL-CAD: bad AVS, no donut for you. BU_AVS_FOR() macro iterator starts from the end of
19:38.14 CIA-52 BRL-CAD: the avs to the beginning. however, if the avs is empty, this would result in
19:38.14 CIA-52 BRL-CAD: indexing into a -1 index and potentially cause a segfault. make the loop safe
19:38.15 CIA-52 BRL-CAD: by setting it to null if count is zero, so it should kick right out of the loop.
19:39.21 brlcad hm, that's insufficient
19:43.47 CIA-52 BRL-CAD: 03davidloman * r44086 10/geomcore/trunk/ (include/SvnDataSource.h src/GS/SvnDataSource.cxx): Implement required functions for SvnDataSource as spelled out by IDataSource
19:50.56 CIA-52 BRL-CAD: 03davidloman * r44087 10/geomcore/trunk/ (3 files in 2 dirs): Update data sources to pass back bu_externals instead of Objects. This isn't optimal, nor do i think it will be permanent, but its the best approach at the moment.
19:52.40 CIA-52 BRL-CAD: 03erikgreenwald * r44088 10/geomcore/trunk/src/interfaces/cl/gsclient.lisp: implement geomreqmsg and geommanifestreq. stub geomchunkmsg.
19:54.37 CIA-52 BRL-CAD: 03davidloman * r44089 10/geomcore/trunk/src/GS/DataManager.cxx: Make DataManager handle bu_externals rather than Objects
19:56.46 CIA-52 BRL-CAD: 03brlcad * r44090 10/brlcad/trunk/include/bu.h: need to make sure we don't enter the loop with that NULL pointer. halt if iterator or target is NULL
19:57.54 brlcad there, that should allow looping over empty avs
19:57.58 CIA-52 BRL-CAD: 03davidloman * r44091 10/geomcore/trunk/tests/GS/ (CMakeLists.txt FileDataSourceTest.cxx): lots of cascading changes to FileDataSourceTest
20:01.37 CIA-52 BRL-CAD: 03brlcad * r44092 10/brlcad/trunk/include/bu.h: go a step further and don't try to dereference the avs if we get handed a NULL pointer. one more example of the lengths we go to for you. because we care.
20:04.34 dloman lol nice one.
20:04.51 dloman that's a bumper sticker if i've ever seen one.
20:06.29 *** join/#brlcad volock (~chatzilla@174.46.225.138)
20:07.39 CIA-52 BRL-CAD: 03brlcad * r44093 10/brlcad/trunk/include/bu.h: document BU_AVS_FOR() macro with an example code snippet.
20:10.59 CIA-52 BRL-CAD: 03brlcad * r44094 10/brlcad/trunk/include/bu.h: tweakage
20:11.52 kunigami in nirt/if.c there's a external array, ValTab. There are at least two elements of ValTab that store the output of bu_basename. should I use the static buffer trick?
20:13.37 CIA-52 BRL-CAD: 03brlcad * r44095 10/brlcad/trunk/src/librt/db5_types.c: use db5_standard_attribute() instead of hard-coding the standard attribute names in db5_apply_std_attributes(). also check our inputs in db5_standardize_avs().
20:16.17 volock <PROTECTED>
20:16.18 volock ...though I've also used BSP and Oct Trees. I'm trying to think out how an API like is asked for should work. IE. What kind of data it'd be expecting, etc for crafting my proposal
20:16.49 brlcad kunigami: at a glance, you can either wrap the output in bu_strdup() then free the memory at the end (see 'need_to_free' for similar issue) ... or you can reuse the existing regionPN buffer presuming ValTab is not used after that function
20:16.54 brlcad hello volock
20:17.44 volock hello brlcad. You're Chris right?
20:18.03 brlcad some people call me that
20:18.06 brlcad most call me Sean :)
20:19.09 volock Ah. I was going from memory from reading the wiki you set up for us prospective GSoC people. You guys definitely have a lot of interesting coding to do, that looks like a lot of fun. Then again as an Applied Math and CS double major, my view may be a little skewed.
20:20.58 brlcad thanks, most of us tend to think it's a lot of fun too
20:21.24 brlcad as for the spatial partitioning project, the #1 difficulty there is going to be careful integration
20:22.26 brlcad that gets at the very heart of our core library, which is highly optimized for our current purposes, customers, raytracing, etc
20:23.22 brlcad ideally, you'd not only have pretty good familiarity with spatial partitioning but also with our LIBRT library and how it does what it does currently
20:24.15 brlcad even something as simple as abstracting out what it currently does without affecting performance could be very tricky
20:24.46 brlcad much harder to implement a completely different modular partitioning scheme that actually out-performs :)
20:25.15 brlcad so that's not mean to scare or entice you, it's just the matter-of-facts surrounding that particular project
20:26.39 volock Yeah. I have experience with Spatial Partitioning both from a raytracer and working for someone doing particle physics. Those were considerably simpler than this would be obviously. Not only because your problem contains performance constraints compared to what has probably been highly optimized code over years, but in the variety of data you'd want to easily send to the API
20:32.07 brlcad the other kicker is that our spatial partitioning has to be at least partially aware of the construction hierarchy since we use constructive solid geometry (CSG) where there may be void regions or unknown overlap conditions
20:32.15 brlcad we only rarely deal with polygons so all you really have for binning things together is a primitive's overall bounding box or bounding sphere
20:32.17 brlcad so, what brought you to brl-cad's ideas list?
20:32.21 brlcad or not
20:32.41 *** join/#brlcad volock (~chatzilla@174.46.225.138)
20:33.21 kunigami brlcad: is there any guarantee that after the 'need_to_free' region the memory allocated won't be used?
20:33.45 brlcad didn't look through the code that closely, good question :)
20:36.06 kunigami well, yesterday you said that if refactoring the code would take more than 15 minutes I should tell you :P I think I spent at least an hour on it :)
20:38.06 *** join/#brlcad volock (~chatzilla@174.46.225.215)
20:38.29 volock Sorry my internet connection decided to go out
20:38.57 brlcad kunigami: yes, fair enough -- it's a task for someone, that doesn't necessarily need to be you right now
20:39.25 brlcad if you're selected, maybe you can finish the job on your own patch if someone else hasn't by then :)
20:41.05 kunigami hmm, ok. that's the only file that is not that trivial to change. All other ocurrences of bu_basename I've already changed. Should I re-submit the patch with this new changes for registration?
20:42.35 brlcad absolutely
20:43.04 brlcad helps to give them new name either on the file or the comment, so can tell which is the latest
20:56.32 CIA-52 BRL-CAD: 03erikgreenwald * r44096 10/geomcore/trunk/src/interfaces/cl/gsclient.lisp: implement chunking protocol. Add "getgeom" conviencience function
20:58.50 kunigami brlcad: ok, I'll append a version on it
21:11.03 kunigami If I write more than one proposal and both are accepted, will you take into consideration the priority of my choices?
21:13.50 brlcad both can't be accepted -- we'd narrow it down to one or the other
21:14.15 brlcad but that said, your interest definitely matters too, so write down your priority in the proposal too
21:15.54 kunigami hmm ok
21:17.52 brlcad proposals often do get changed throughout the course of the summer too, so long as we're both in agreement on the goals and approach as things change
21:18.43 brlcad again, we care more about integrating new developers than we do about getting a particular chunk of code written
21:22.21 CIA-52 BRL-CAD: 03starseeker * r44097 10/brlcad/branches/cmake/ (5 files in 4 dirs): MFC r44096
21:25.33 kunigami perfect!
21:27.31 kunigami hmm, does anyone know if melange allows editing the proposal? or if I want my proposal to be reviewed I should write it in other place (google docs for example) and send only the final revision to melange?
21:28.57 brlcad yes, you can continue to edit up to the deadline
21:29.09 brlcad we will write questions and comments there too
21:29.28 brlcad if you want feedback beforehand, suggest wiki or google docs
21:29.50 brlcad otherwise, not much difference when/where the comments occur -- other than the earlier the better
21:30.01 brlcad gets really hectic in the last few days
21:39.48 *** join/#brlcad ``Erik (~erik@BRLCAD.ORG)
21:39.51 CIA-52 BRL-CAD: 03erikgreenwald * r44098 10/geomcore/trunk/src/interfaces/cl/ (gsclient.asd gsclient.lisp gsnet.lisp): break GS net ops into seperate package
21:56.29 CIA-52 BRL-CAD: 03starseeker * r44099 10/geomcore/trunk/tests/svntest/ (CMakeLists.txt main.c): Get as far as deleting and adding files via the commit editor - still don't have the ability to apply diffs.
22:01.28 CIA-52 BRL-CAD: 03brlcad * r44100 10/brlcad/trunk/src/librt/db5_types.c: check our inputs for sanity on all the avs standard attribute functions
22:06.04 volock How many people can BRL-CAD hire through GSoC? And how many typically apply (out of curiosity)?
22:17.26 brlcad volock: we don't consider them as "hires", it's not just a summer job
22:17.47 brlcad if it's just a summer job to you, then GSoC (with any org) might not be right for you
22:18.18 brlcad the intention is to get you involved in open source development as a long-term contributor
22:20.12 brlcad otherwise, we talk about it some at http://brlcad.org/wiki/Google_Summer_of_Code and this year's slot count specifically at http://brlcad.org/wiki/Google_Summer_of_Code/2011
22:25.16 CIA-52 BRL-CAD: 03starseeker * r44101 10/geomcore/trunk/tests/svntest/main.c: OK, this creates a new file and gets contents into it. Next step will be to change the contents of an existing file.
22:41.25 *** join/#brlcad piksi (piksi@pi-xi.net)
23:01.09 *** join/#brlcad ibot (~ibot@rikers.org)
23:01.09 *** topic/#brlcad is BRL-CAD Open Source Solid Modeling || http://brlcad.org || http://sf.net/projects/brlcad || #brlcad logs: http://ibot.rikers.org/%23brlcad/ || BRL-CAD release 7.18.4 ETA 20110401 || Welcome GSoC 2011 Students! Speak up, ask questions, start here: http://brlcad.org/wiki/Google_Summer_of_Code/2011
23:14.33 *** join/#brlcad b0ef (~b0ef@157.26.202.84.customer.cdi.no)
23:25.13 CIA-52 BRL-CAD: 03starseeker * r44102 10/geomcore/trunk/tests/svntest/main.c: grr - need to figure out how to handle svn_txdelta_run, apparently...
23:31.40 brlcad for anyone that missed our logo limelite: http://imagepaste.nullnetwork.net/viewimage.php?id=1980
23:32.33 brlcad to be repeated in a few hours :)
23:33.28 CIA-52 BRL-CAD: 03starseeker * r44103 10/geomcore/trunk/tests/svntest/main.c: Hmm - doesn't look like reading file contents from the repo was the issue - maybe the md5 checksum is really necessary.

Generated by irclog2html.pl Modified by Tim Riker to work with infobot.