**** BEGIN LOGGING AT Thu Oct 30 02:59:57 2008 Oct 30 03:31:10 * ttuttle is getting "/home/tom/android/Foo/build.xml:109: Execute failed: java.io.IOException: Cannot run program "/home/tom/android-sdk-linux_x86-1.0_r1/tools/aapt": java.io.IOException: error=12, Cannot allocate memory". What do I do? Oct 30 03:33:01 there is a java switch to increase your heap size Oct 30 03:33:29 gambler: Where would I set it in build.xml? Oct 30 03:35:02 where it calls the java task Oct 30 03:35:27 hrm... Oct 30 03:35:28 just a sec Oct 30 03:36:53 But it's failing on aapt. Oct 30 03:37:26 Is that even java? Oct 30 03:38:53 I think aapt is C++ Oct 30 03:39:19 * ttuttle thinks Gentoo broke itself again. Oct 30 03:39:40 is there a way to build just development/samples? Oct 30 03:40:21 running make at the top level seem to be the only option of building source now Oct 30 03:40:40 Wow, now it's saying "Error occurred during initializtion of VM" "Could not reserve enough space for card marking array" Oct 30 03:40:47 Something is going seriously wrong here with my Java. Oct 30 03:40:57 * ttuttle remembers now! Oct 30 03:41:04 *This* is what happens if you turn off overcommit on Linux! Oct 30 03:41:33 haha Oct 30 03:41:55 don't do that without a massive swap file... Oct 30 03:42:50 what's the make target to run unit tests? Oct 30 03:53:58 So, it doesn't look like requesting periodic location updates is enough to make the device wake up for them :-( Oct 30 03:55:02 This is sad. Oct 30 03:55:08 ttuttle: what's up? what you working on? Oct 30 03:55:23 muthu: Trying to write an app that periodically logs GPS location. Oct 30 03:55:38 why? Oct 30 03:55:43 muthu: eh, boredom. Oct 30 03:55:46 haha Oct 30 03:55:55 muthu: And I wanna see if I can get my location plotted on a Google Map automatically ;-) Oct 30 03:56:02 oh ok Oct 30 03:58:43 But it won't wake itself up :-( Oct 30 03:59:30 hmm Oct 30 04:00:02 * ttuttle doesn't want to fight the location manager's periodic update system, but I don't want to hold a wakelock either. Oct 30 04:04:04 Any ideas? Oct 30 04:04:39 are you saying, the gps updates are not delivered to your app? Oct 30 04:05:12 muthu: The device never wakes up to get the updates. Oct 30 04:05:28 muthu: If I'm using it, the app gets updates, but if it goes to sleep, it doesn't wake up to get them. Oct 30 04:05:35 oh.. you want' to force it? Oct 30 04:05:48 Yes. Oct 30 04:05:59 hmm.. might be because of battery considerations Oct 30 04:14:02 service stubs needs to be manually deleted.. make doesn't do it Oct 30 04:25:24 Hey, is there a way to check if a service is running? Oct 30 04:25:55 there's no direct way Oct 30 04:26:19 once bound.. you can maintain a flag to check if connection running Oct 30 04:26:30 muthu: It's not bound, just started. (The app doesn't need to talk with it.) Oct 30 04:26:40 then.. no Oct 30 04:26:44 Okay. Oct 30 04:27:06 once you call start.. its running Oct 30 04:27:27 you can have a listener.. ping back Oct 30 05:07:29 ha, build/envsetup.sh has some good functions Oct 30 05:50:03 i am really enjoying debugging on the device Oct 30 05:51:56 muthu i installed cooking capsules Oct 30 05:51:58 also Oct 30 05:54:14 haha Oct 30 05:54:20 ecorio needs to update its LOG_TAG Oct 30 05:54:47 f00f-: yay Oct 30 05:54:57 now you know how to cook aloo parantha Oct 30 05:55:12 :D Oct 30 05:55:34 i was thinking of another app along the same lines Oct 30 05:55:41 what's that? Oct 30 05:55:54 the input is your ingredient list, the output is a list of recipes Oct 30 05:56:01 nice Oct 30 05:56:18 CC should do that actually Oct 30 05:56:31 ya Oct 30 06:51:49 ha! Oct 30 06:51:52 mm & mmm Oct 30 06:51:54 nice Oct 30 06:52:34 man, this srly needs some docs Oct 30 06:52:42 a developer guide would be useful Oct 30 07:29:58 ./development/pdk/docs/index.html Oct 30 07:30:04 that's the dev docs Oct 30 07:30:16 pls update this in the channel topic Oct 30 08:59:35 hahaha irc'ing from the g1 Oct 30 08:59:45 connectbot is nice Oct 30 09:00:05 but dont see a way to remove connections Oct 30 09:29:35 f00f-: how's G1? Oct 30 13:50:11 does anyone know if I can obfuscate my apps package name to something like a.a or do I have to use a correct package name? Oct 30 13:50:16 I guess the later one.. but why? what does depend on it? Oct 30 13:53:15 You can definitely obfuscate it. Nothing depends on it other than the code that explicitly uses your package name. Oct 30 13:55:33 ok, but will there be a conflict if I obfuscate it to a.a and some other app also obfuscates it to a.a ? :) Oct 30 13:55:48 That being said, package names traditionally follow the same pattern as class names (reversed hostnames, com.tauno.zzz) to avoid the risk of collisions. If you use a package name that doesn't follow that pattern, be sure to use something that is sufficiently unlikely to cause colisions. Oct 30 13:56:05 Yes, that'll be a conflict. package names are supposed to be globally unique. Oct 30 13:56:29 ok, then I won't obfuscate them.. better be safe :) Oct 30 13:56:30 you should generate a GUID/UUID somewhere that you don't use for anything else, and use that as your package name. Oct 30 13:56:31 thansk Oct 30 13:56:55 sure Oct 30 14:00:55 What is the most efficient approach to parsing an xml file from the web? I've seen using a URL to make an InputStream and using XMLReader on that, and I also heard using an HttpClient. Oct 30 14:04:30 Are you trying to figure out the best way to download the file or to parse it? Oct 30 14:04:48 You ask about parsing but then describe downloading Oct 30 14:06:13 true, I would say both, but I'm particularly interested at this point if there is any reason to use an httpclient over Url.Openstream in terms of efficiency Oct 30 14:08:02 That I don't know Oct 30 14:08:26 I doubt it is worth too much bother Oct 30 14:08:52 ok Oct 30 14:09:41 Ultimately performance is going to be capped by your network. If one is particularly chatty then latency would be an issue but I suspect they both operate nearly identically. There's only really one way to download a file using the http protocal Oct 30 14:09:45 protocol Oct 30 14:11:36 makes sense, thank you for your help. i'm looking at parsing now and it seems frustrating. You want to use an XmlReader, which you get from a SaxParser, which is gotten from a SaxParserFactory (sigh) Oct 30 14:13:20 I find XML parsing to be frustrating. XmlPullParser is OK. You could also use Document object in conjunction with DocumentBuilder Oct 30 14:14:02 XmlPullParser is more of a stream parser. It'll post events on new tags and end tags and you'll decide how to handle them at that time Oct 30 14:14:54 Document will build an in-memory representation of the XML using Nodes and NodeLists and other magical, overly complex objects Oct 30 14:15:14 I stay away from XML whenever I can. I use JSON for my own stuff Oct 30 14:15:20 yea I hear its a resource hog, there is a post on this here http://groups.google.com/group/android-developers/browse_thread/thread/4b10a167f1311152/84379c7f9f0aae73?lnk=gst&q=XmlPull#84379c7f9f0aae73 Oct 30 14:16:12 I don't understand why someone decided parsing plain text had to become rocket science Oct 30 14:16:28 haha very true Oct 30 15:23:32 romainguy_: Perspective is working :) http://www.youtube.com/watch?v=KOfKpjEpRa8 Oct 30 15:24:08 plusminus_, I hope you were in the passnger seat :| Oct 30 15:24:44 man, I have knees to steer :-P Oct 30 15:24:59 what application is that? Oct 30 15:25:10 i would take that vid down before some cop decides to track you down on his own time :| Oct 30 15:25:19 unfortunately from time to time things drawn to the canvas now look really weird :/ like on 5:10 the whole screen gets drawn red :( Oct 30 15:25:33 I know a few that have done just that to people making vids while driving Oct 30 15:25:53 languish: just joking, I was on the passenger seat (the one withou ta steering wheel) Oct 30 15:26:06 :) Oct 30 15:26:47 languish: any idea why the weird drawing could happen (i.e. at 5:10 ) Oct 30 15:27:36 sorry... no.. Oct 30 15:30:38 Is that Tomtom? Oct 30 15:33:44 it's plusminus_'s app Oct 30 15:34:11 It looks good. I thought it was Tomtom GPS. Oct 30 15:34:58 smr: I think that was a compliment :-D Oct 30 15:35:26 can one see that it is a 'Perspective View' ? Oct 30 15:35:45 Oh yeah, it was! I felt a tinge of jealousy... there are so many cool dev jobs out there and I'm stuck writing crap for yellow pages Oct 30 15:37:53 heh Oct 30 15:38:03 that reminds me, i got 3g this morning, i should be installing the whitepages app Oct 30 15:38:22 I'm not ballsy enough to try going into business for myself Oct 30 15:38:40 Heh, maybe I should convince my work that we need to write a yellow pages app for Android Oct 30 15:39:35 eh Oct 30 15:39:39 Too late champ :( Oct 30 15:39:49 meh, figures Oct 30 15:40:26 google maps pretty much takes care of that for you anyway Oct 30 15:40:44 yeah, although the yellow pages app puts up less steps Oct 30 15:40:59 its like the wikipedia app Oct 30 15:41:07 you could just search google, but that adds an extra step Oct 30 15:42:09 heh, I shouldn't give google any props for maps being a substitute for YP... YP pays my bills :D Oct 30 15:53:07 Is it possible to monitor network traffic in the shell Oct 30 15:53:29 netstat Oct 30 15:54:57 ah of course thank you Oct 30 16:05:18 with a RelativeLayout Oct 30 16:05:35 I want the to place a text view and then an edit text Oct 30 16:05:40 next to one another Oct 30 16:05:46 and have the text view centered in the edit text Oct 30 16:06:02 huh Oct 30 16:06:42 when I do it now, I get the text view aligned with the top of the edit text Oct 30 16:06:44 not the center Oct 30 16:06:48 ie: I place a text view Oct 30 16:06:53 oh vertical center Oct 30 16:07:07 and then the edit text.. layout_toRightOf="textview" Oct 30 16:07:27 you want a textview centered in an edittext? Oct 30 16:07:52 well, not IN the edit :) but centerered relative to the edit, yes Oct 30 16:08:21 michaelnovakjr: he's looking for the vertical alignment tag who's name escapes me right now. so that the view is centered vertically next to the taller edit-text Oct 30 16:08:32 exactly! Oct 30 16:08:39 ah Oct 30 16:08:42 CENTER_VERTICAL/ Oct 30 16:08:44 ? Oct 30 16:09:33 no Oct 30 16:09:38 where are all the tags documented? Oct 30 16:09:48 http://code.google.com/android/reference/android/widget/RelativeLayout.html Oct 30 16:09:50 there :) Oct 30 16:09:59 :) Oct 30 16:10:15 mm... I guess I have to place the edit first Oct 30 16:10:52 arg Oct 30 16:11:11 ok, I need to place the edit first because otherwise I reference an object which is not placed yet. but when I place the edit first, it fills the entire line Oct 30 16:11:34 what's the width? Oct 30 16:11:59 I want the textview to be the required size, and the edit text to fill the remainder of the line Oct 30 16:12:26 so I use fill_parent on the edit text, and wrap_content on the text view.. but of course that doesn't work :( Oct 30 16:20:57 so I have to give an absolute width for that to work? Oct 30 16:21:28 use weights Oct 30 16:21:59 width 0px, weight 30 .. width 0px, weight 70 Oct 30 16:22:02 for example Oct 30 16:22:59 so that assigns 30% of the space to the label and 70% to the edit/ Oct 30 16:23:01 ? Oct 30 16:23:46 perhaps relative isn't the right type of layout... basically what I have is a bunch of rows of label|text, and then some othe rthings (like spinners) Oct 30 16:24:02 I tried using a table, but that didn't work out, because some rows have 3-4 items, and others have 2 Oct 30 16:24:15 so I ended up with the rows with two items having very small items Oct 30 16:24:30 I tried linear layout, but then I couldn't get things to align Oct 30 16:24:50 so far I haven't had much luck! Oct 30 16:26:53 linearlayout can align the way you want Oct 30 16:26:57 at least, it does for me :) Oct 30 16:27:04 ok, so simple case :) Oct 30 16:27:07 I have 2 rows Oct 30 16:27:15 one label, one edit per row Oct 30 16:27:23 how to get the second rows' edit to line up with the first? Oct 30 16:27:42 ie: something like Oct 30 16:27:49 |label | edit | Oct 30 16:27:54 |label | edit | Oct 30 16:28:10 (except it lines up of course!) :) Oct 30 16:29:05 [linear vertical [linear horiz [text width=0px weight=30][edit width=0px weight=70] ]/linear][linear horiz [text..edit as above] /linear] .. /linear] Oct 30 16:29:21 ok, that's using the weights :) Ok, I'l tryu Oct 30 16:32:27 ok, I must be doing something wrong Oct 30 16:32:31 the edit doesn't fill the likne Oct 30 16:33:03 lemme check one of my xml files Oct 30 16:33:10 www.pastebin.ca/1240723 Oct 30 16:34:19 that wrap_content width on the 2nd linear is why Oct 30 16:34:54 ahha Oct 30 16:34:57 great, thanks! Oct 30 17:06:45 if I make the second row hold a textview & a spinner Oct 30 17:06:52 then the text view lines up with the top of the spinner, not the center Oct 30 17:09:16 ok, layout_gravity="center_vertical" sorts that out Oct 30 17:26:14 I have three check boxes, I want them on the right of the layout... layout_gravity="right" doesn't seem to do the job Oct 30 17:40:37 OK, I'm officially sick of the builtin shell. Does anyone know if someone's built a static busybox anywhere? Oct 30 17:42:53 * Disconnect has heard rumours Oct 30 17:52:46 using a linearlayout how do I get a widget placed at right? Oct 30 17:52:52 ie: a single checkbox at the far right? Oct 30 17:53:16 I tried Oct 30 17:53:29 I end up with a widget on the left Oct 30 17:55:04 your linear layout is horizontal? Oct 30 17:56:06 actually, I just foudn a post by you romain, where you give a solution Oct 30 18:16:29 romainguy_: the solution you gave doesn't seem to work for a single element. Oct 30 18:19:41 I'm talking specifically about this post: http://groups.google.com/group/android-developers/browse_thread/thread/c67710fbc971a9d4/f3011cc8dd13216f Oct 30 18:21:02 that should make no difference Oct 30 18:21:14 you could always use android:gravity="right" on the LinearLayout itself Oct 30 18:21:48 doh, ok, that works. thanks! Oct 30 18:23:03 btw, the eclipse workspace keeps running out handles when I edit the .xml... is that a known bug? Oct 30 18:24:56 ok, further issue ;) my prior row has 2 elements with weight=30, weight=70. my next row has 3 elements,m right aligned. I would like that to have weight=70 so it lines up with the prior row. Oct 30 18:25:24 I tried a layaout containing two layouts (30/70) Oct 30 18:25:27 but that didn't work Oct 30 18:26:31 duncanfoo: the eclipse layout editor crashes a -lot- Oct 30 18:30:28 ok, another solution that does work is a blank text field followed by the items with weights Oct 30 18:30:30 yuck Oct 30 18:31:22 duncanfoo: give all your views a width of 0dip Oct 30 18:31:31 0dip == 0px? Oct 30 18:31:38 yeah Oct 30 18:31:48 but we avoid using px in our layout files Oct 30 18:31:52 so stick to dip :) Oct 30 18:32:30 heh Oct 30 18:33:13 ok, I've already done that... to recap what I want is something like Oct 30 18:33:14 duncanfoo: the trick here is that the weight is used to distribute the remaining empty space Oct 30 18:33:15 |label (30%) | edit (70%) | Oct 30 18:33:16 |30%| | [x] [x] [x] | Oct 30 18:33:26 so if you give all widgets a width of 0, you are distributing all the space instead Oct 30 18:34:07 the first row, no problem. the second ... I thought I might right align the layout, but that resulted in the layout spilling into the left 30% Oct 30 18:34:40 yeah I don't think there's a way around this without using an empty View to fill the left 30% Oct 30 18:34:58 you could use a RelativeLayout to do all that though Oct 30 18:34:59 second row is [linear [30%][linear 70%[x][x][x]]] Oct 30 18:35:15 dims: the first linear is useless Oct 30 18:35:18 disconnect, I tried that but it didn't work Oct 30 18:35:20 you can just put a View instead Oct 30 18:35:27 for your second row: Oct 30 18:35:28 perhaps I screwed it up... if you think it works, I'll try that again Oct 30 18:35:33 Oct 30 18:35:41 Oct 30 18:35:49 * Disconnect isn't the guy to ask really but.. Oct 30 18:35:49 Oct 30 18:35:55 Oct 30 18:36:13 so ...? Oct 30 18:36:21 no Oct 30 18:36:25 no need for the first linearlayout Oct 30 18:36:29 a TableRow *is* a LinearLayout Oct 30 18:36:38 table row? Oct 30 18:36:42 you're not using a table? Oct 30 18:36:47 no Oct 30 18:36:51 sorry I'm getting you confused with somebody else :) Oct 30 18:36:53 so yeah Oct 30 18:36:54 but Oct 30 18:36:56 lol Oct 30 18:36:58 ok Oct 30 18:37:02 do you really need that label to be 30% of the screen? Oct 30 18:37:07 instead of, say, wrap_content? Oct 30 18:37:21 because if you don't need it to be 30%, you could replace all that crap with a RelativeLayout Oct 30 18:37:35 I tried relative layout earlier, but I ended up with other problems Oct 30 18:37:43 which I can't remember right now! Oct 30 18:37:55 almost certainly because I don't know what i"m doing ;) Oct 30 18:38:09 this is the third layout tool I've used this month! Oct 30 18:38:18 first it was the iPhone, then eclipse SWT, and now android. nice Oct 30 18:38:28 SWT @!# Oct 30 18:38:34 (sorry) Oct 30 18:38:42 (iPhone was the simplest ;) Oct 30 18:39:21 yeah it's just based on springs? Oct 30 18:39:25 well Oct 30 18:39:29 it was based on the GUI ;) Oct 30 18:39:36 it works well when you have a good GUI builder Oct 30 18:39:45 yes, the Xcode builder works really well Oct 30 18:40:13 I was just using the absolute layout... but the builder has really nice layout and spacing tools. Oct 30 18:40:37 yes Oct 30 18:41:27 I guess I could relative layout again... however, I almost have this layout looking the way I want! :) Oct 30 18:42:50 yes but if you use too many views in your layout I'll come to your house and yell at you until you fix it :) Oct 30 18:43:55 ok, that works nicely./ view = 30% linear layout = 70 Oct 30 18:43:58 thanks! Oct 30 18:44:25 * romainguy__ needs to write a SpringLayout Oct 30 18:44:41 (android could use some better layouts!) Oct 30 18:44:53 (or a nice builder) Oct 30 18:45:01 our layouts are actually pretty good Oct 30 18:45:08 it's a builder you want really Oct 30 18:45:47 I have a few powerful layouts in mind but they would be expensive Oct 30 18:47:01 on the G1, if you talk over 3g is the connection transparently established? or do you have to do something special in the API? Oct 30 18:47:12 (or EDGE, etc) Oct 30 18:47:15 nothing to do Oct 30 18:47:24 on EDGE you cannot get data and voice at the same time Oct 30 18:47:25 so its transparent? Oct 30 18:47:28 yes Oct 30 18:47:35 ok, on the iPhone it is not Oct 30 18:48:21 if you don't use the foundation classes, the network connection is not established at all (with 3g). With Wifi you don't have to do anything special (the regular socket calls work as expected) Oct 30 18:48:41 on Android it doesn't make a difference Oct 30 18:48:46 very cool Oct 30 18:48:47 you just use any networking API and it works Oct 30 18:49:58 what happens if you start on 3g and a wifi station comes in range? I would imagine the connected socket remains 3g? Oct 30 18:50:13 I don't know Oct 30 18:50:43 the 3g socket gets killed in that case - the entire 3g connection is taken down. Oct 30 18:50:51 (the entire 3g *data* connection) Oct 30 18:51:20 So the kernel downs the interface, then? That's easy enough to detect. Certainly the IP is going to change, so there's no (portable) way to make this work at the socket level. Oct 30 18:52:05 killed? ifdown? you'd get differetn results at the API level :) Oct 30 18:52:05 yeah, I assume that at the kernel level (or probably lower in fact) the interface is taken down. Oct 30 18:52:19 you get an IO exception (at least through the http stack) Oct 30 18:53:06 mmm... ECONNRESET? Oct 30 18:53:13 ECONNABORTED perhaps Oct 30 18:53:25 I don't know what it looks like at the kernel / C level. Oct 30 18:53:32 duncanfoo: You can test that on your desktop with ifdown. Oct 30 18:53:59 yes, as long as that is what actually occurs if the 3g network is torn down :) Oct 30 18:54:57 There's not reason it couldn't leave both interfaces alive. But testing that they can work simultaneously is equally simple: start a socket from one network and bring up the other. If the first one dies, see why. Oct 30 18:55:03 er, "no reason" Oct 30 18:55:34 it could, but jbq says it does not :) Oct 30 18:56:06 Right. So therefore it must fail the other socket, and you'll see how. I'm not telling you how the system works, I'm saying it's easy to figure it out for yourself. Oct 30 18:56:21 Yeah, you'd have to very explicitly force the cell connection to stay on in order to not see if go down when turning wifi on. MMS does that. Oct 30 18:56:46 if I had the actual device I would andy :) unfrotunately, its not available in Canada! Oct 30 18:57:53 (once again, I meant the cell *data* connection - the cell voice/SMS conenction is always on). Oct 30 19:44:15 is there a way to set the default margins for a layout? Oct 30 19:46:09 padding Oct 30 19:50:55 that sets the padding of the layout itself... I want to say all items in the layout should have 10dip padding, for example Oct 30 20:02:36 hi romainguy__ Oct 30 20:02:53 the projection-thing with the camera-class from yesterday is working Oct 30 20:02:56 See: http://www.youtube.com/watch?v=KOfKpjEpRa8 Oct 30 20:04:22 looks cool! Oct 30 20:10:28 thx Oct 30 20:14:49 at around 5:08 there is a strange bug that coverz the maptiles in red (obviously the color of one of the lines I'm drawing) but why the hell does it cover the whole screen now? Is that an problem that occurs because of the applied Matrix? Oct 30 20:32:06 is there a widget that can be used for selection of a group of numbers? Oct 30 20:32:15 ie: a continuous value from 1 to 10 Oct 30 20:46:10 plusminus_: I saw that :) Oct 30 20:47:43 any idea why that error could have happened ? Oct 30 20:48:14 sth inside the matrix maybe? As I never had that before :/ Oct 30 20:49:03 I mean like a DIV/0 (even as one usually does not divide using matrixes) Oct 30 22:33:36 OpenGL question, if anyone has a clue: is eglSwapBuffers() rate capped at 60 Hz? I just added a quick frame counter, and I can't get this to read differently (+/- 2% or so) no matter how hard I try. It's the same whether I clear the backbuffer once or a dozen times, etc... Oct 30 22:34:05 it does a vsync Oct 30 22:34:06 so yeah Oct 30 22:34:19 vsync on an lcd? Heh, well I guess my guess was right. Oct 30 22:34:49 actually it depends on your unit Oct 30 22:35:00 I think some units have hardware capped at 50 Hz Oct 30 22:35:04 depending on the screen Oct 30 22:36:14 Phone display cells don't switch anywhere near that fast anyway (I forget which one, but I noticed this happening on some game really badly -- small high contrast object moving semi-slowly across the frame), so it's no doubt a feature not a bug. Just surprised me. Oct 30 22:38:22 And while you're listening: I'm having trouble with recreating a context. My first choice was to call eglDestroyContext() underneath onPause(), because there's no point in holding onto the resources. But I find that the next eglCreateContext() always fails even so, and continues to do so until I see a logcat message from "GLLogger" telling me that the surface is being reclaimed Oct 30 22:38:29 Is that a bug, or am I misunderstanding the API? Oct 30 22:40:25 you can have only one context at a time Oct 30 22:40:41 but we have several apps that do this Oct 30 22:40:45 so you must be doing something wrong Oct 30 22:40:48 Yes. But apparently I still "have" a context even after eglDestroyContext() and eglDestroySurface() have returned. Oct 30 22:41:03 you can send an email to the developers grouos Oct 30 22:41:05 groups Oct 30 22:41:12 somebody with more GL experience can probably give you more info Oct 30 22:41:45 here is how we destroy the GL context in ViewRoot: Oct 30 22:41:45 mEgl.eglMakeCurrent(mEglDisplay, EGL10.EGL_NO_SURFACE, Oct 30 22:41:45 EGL10.EGL_NO_SURFACE, EGL10.EGL_NO_CONTEXT); Oct 30 22:41:45 mEgl.eglDestroyContext(mEglDisplay, mEglContext); Oct 30 22:41:46 mEgl.eglDestroySurface(mEglDisplay, mEglSurface); Oct 30 22:41:46 mEgl.eglTerminate(mEglDisplay); Oct 30 22:42:49 OK, so eglMakeCurrent with a "none" context and surface first. I'm definitely not doing that, and seems likely... Oct 30 22:43:31 that code was written by the guy who wrote our OpenGL stack Oct 30 22:43:34 so I kinda trust it ^^ Oct 30 22:44:35 Ah, OK. I think I see the issue: I'm leaving that thing active in the thread TLS, so the refcount doesn't actually destroy it under eglDestroy*. But I suspect there's still a bug here: the thread has exited before the next create call, so something's not cleaning up the refcount. Oct 30 22:45:15 Bingo, that's the magic. Thanks. Oct 30 22:45:21 you're welcome **** ENDING LOGGING AT Fri Oct 31 02:59:57 2008