| <<<Back 1 day (to 2013/12/22) | 2013/12/23 |
funfunctor | hi guys | 03:21.59 |
Robin_Watts | funfunctor: Morning. | 08:59.44 |
| The nature of irc is such that if you have a question, you're best to ask it rather than to wait for a response to a 'hi' :) | 09:00.22 |
Robin_Watts | attempts to update xulrunner. I may be some time. | 09:07.09 |
Robin_Watts | brb. I hope. | 10:05.19 |
| tor8: Did you get to discuss rebind with sebras? | 10:26.29 |
kens | Hmm 7 nodes just fell off the cluster. I wonder if Marcos had a power cut.... | 10:54.19 |
| drat now the whole cluster has died | 10:56.27 |
tor8 | Robin_Watts: not yet, no | 11:20.29 |
Robin_Watts | tor8: ok. | 11:33.40 |
| kens: seems to have recovered. | 11:34.00 |
tor8 | Robin_Watts: maybe today | 11:34.02 |
kens | Robin_Watts : yes, was something tmporary | 11:34.10 |
| Hopefully this time I'll have my garbage collection pointers right so not every file seg faults.... | 11:34.42 |
Robin_Watts | Hmm. I just installed the latest chatzilla, and yet I still seem to be running the old one... | 11:34.48 |
| tor8: oooh. | 11:53.09 |
| I might have 'late' document repair working. | 11:53.21 |
| tor8: patch on robin/master for 'late' document repair. | 12:21.46 |
| I'm going to do a followup patch too though, so repair only triggers if we fail to find an object (or the expected object) at a given offset. Currently it will trigger on any broken object. | 12:22.30 |
| cluster test works on those two patches. No differences, except a sumatra test file has started to work. | 12:56.59 |
| So if you're happy, I can squash them together maybe? | 12:57.18 |
| http://www.channelregister.co.uk/2013/12/20/blackberry_ends_write_off_of_a_year_with_44bn_writedown/ | 13:59.24 |
| $4.4 billion. Ouch | 13:59.31 |
funfunctor | RIM does badly => 'buys' opensource QNX => RIM does well => RIM close sources QNX => RIM does badly <g> | 14:28.17 |
Robin_Watts | kens, you here? | 15:08.24 |
kens | Certainly am | 15:08.30 |
| for a couple more hours :-) | 15:08.36 |
| Anything I can do ? | 15:09.18 |
Robin_Watts | I was going to ask you to look at something, but the penny may have just dropped :) | 15:09.35 |
kens | Ah, carboard programmer effect | 15:09.47 |
Robin_Watts | The fastest cardboard programmer in the west :) | 15:09.57 |
kens | The penny ifnally dropped for me too. The reason my code wasn't emitting the modified outlines is because I was looking at the wrong output file...... | 15:10.37 |
Robin_Watts | hehe! | 15:10.44 |
| Oh, we've all been there... | 15:10.52 |
kens | I've been tracing code for the last 20 minutes 'But its *writing* it, how can it not be there....' | 15:11.23 |
| Anyway as long as my cluster test works, it'll all be good | 15:11.45 |
Robin_Watts | kens: hmm. | 15:14.47 |
kens | Hmmm ? | 15:14.52 |
Robin_Watts | In MuPDF in pdfwrite, when we have to do a new xobject form, we pass in various params. | 15:15.27 |
kens | Seems likely | 15:15.37 |
Robin_Watts | Like knockout, isolated, blendmode, alpha, colorspace. bbox. | 15:15.51 |
kens | And amtrix, unless you force it to identity or something | 15:16.04 |
Robin_Watts | All of those go directly into the generated forms dictionary. | 15:16.19 |
kens | Yes.... | 15:16.25 |
Robin_Watts | except blendmode. | 15:16.26 |
kens | blendmode either goes in an ExtGSatte or a group dict | 15:16.38 |
Robin_Watts | really? which group dict? | 15:16.50 |
kens | If your form has a trasnparency group | 15:17.00 |
| It needn't, it depends on your transparency | 15:17.17 |
| But in the past GS' pdfwrite only emitted forms when it nededed a trasnparency group | 15:17.35 |
Robin_Watts | Hmm. 4.9 Form XObjects says that we can use 7.55 Transparency Group XObjects. | 15:18.24 |
kens | They are defining transparency groups as XOBjects ? Okay.... | 15:18.47 |
Robin_Watts | 7.55 Transparency Group objects lists the possible entries as S, CS, I, K... but not BM. | 15:18.58 |
kens | Hmm, I thought Blendmode was in there, btu I admit transparency is not my strong point | 15:19.15 |
Robin_Watts | My existing code puts stuff in as a BM, and the bug is that it's not working. | 15:19.30 |
kens | If not then the blend mode must be in an ExtGState | 15:19.31 |
Robin_Watts | Which means it needs to be part of the contents? | 15:19.42 |
kens | a BM in the Group ? | 15:19.43 |
| Robin_Watts : No, an ExtGState | 15:19.53 |
| I think | 15:20.00 |
| let me consult the PDFRM | 15:20.06 |
Robin_Watts | The contents will need to do '/blah gs' though, right? for an extstate blah defined in the resources. | 15:20.38 |
kens | Oh well of course the ExtGState has to be called by the contents of course | 15:20.41 |
| Yes, what you just said | 15:20.49 |
Robin_Watts | yeah, that neatly breaks the abstractions here :( | 15:21.03 |
kens | Yeah, its pretty pants, but typical of the poor specification of PDF | 15:21.19 |
Robin_Watts | But... the blendmode isn't for the contents of the group. | 15:21.45 |
kens | Its not the only place that Adobe messed up this kind of thing, IMO | 15:21.45 |
Robin_Watts | The blendmode is for how the group as a whole is blended, right? | 15:21.56 |
| i.e. it's a blendmode for the group, not for the contents of the group. | 15:22.11 |
kens | Its for how the following primitives are blended I think | 15:22.19 |
| You can change part weay through. Again, let me check this | 15:22.29 |
| OK the group determines the colour space of the blending, and a few other things like whether it is isolated, knockout etc. But the objects themselves are belded using the current belnd mode, which can change | 15:23.24 |
| So you could blend an image using 'Darken' then some vectors with 'normal' and a sahding with say Lighten | 15:23.46 |
Robin_Watts | But the whole group will be blended back using the blend mode that was in force at the group creation. | 15:24.16 |
kens | In effect the group determines what is the 'backdrop' for applying the object with the current blending mode | 15:24.20 |
Robin_Watts | i.e. I want to do: /BlendModeExtGstate gs /WhateverMyFormNameIs Do | 15:24.56 |
| Morning ray_laptop. How are you today ? | 15:25.08 |
kens | If you want the *group* to have a poarticualr blending mode, then you need to set the blend mode before you execute the form | 15:25.21 |
Robin_Watts | Yeah, that's what I was getting wrong. So I can remove the blendmode from the group definition, as the same form could be reused several times under different blendmodes. | 15:25.53 |
kens | ie the bledning mode for the group, or form, is the bledning mode in the parent stream when the form is excecuted | 15:25.56 |
Robin_Watts | kens: Indeed. That all fits together much more nicely. | 15:26.08 |
| Thanks. | 15:26.10 |
kens | Robin_Watts : it could be, yes, I've never seen that but I think texchnically its possible | 15:26.13 |
| NP | 15:26.27 |
| Hi Ray, how are you today ? | 15:28.02 |
Robin_Watts | kens: I may be spotting a pattern here :) | 15:31.37 |
kens | ?me hoeps the health of Ray's internet does not reflect his personal health | 15:39.55 |
Robin_Watts | kens: Bug 694761 | 16:30.17 |
| Should I be able to spot a .ttf by looking at the first few bytes? | 16:30.45 |
kens | Umm, yes | 16:30.53 |
| You should see a bunch of 4-character names l;ike OS/2 CMAP HHEA etc | 16:31.20 |
Robin_Watts | yeah, I see OS/2 | 16:32.04 |
kens | there should be some others, all in the same area | 16:32.15 |
Robin_Watts | hhea, hmtx loca fpgm etc | 16:32.36 |
kens | yep, that's a tt font | 16:32.46 |
Robin_Watts | Font forge refuses to load it. | 16:33.19 |
| The name appears as "Calibri<" and it says that's invalid. | 16:33.39 |
kens | it may not like a subset | 16:33.39 |
| That's not invalid | 16:33.54 |
| mail it to me and I'll run ttfdump on it if you like | 16:34.12 |
Robin_Watts | will do, thanks. | 16:34.23 |
kens | ttfdump likes it well enough | 16:36.45 |
Robin_Watts | ok, thanks. | 16:36.59 |
kens | Was tehre anything about it you needed ? | 16:37.09 |
Robin_Watts | Nope. Just whether it was corrupt or not. | 16:37.27 |
kens | ah ok | 16:37.33 |
| The CMAp doesn't look good | 16:37.53 |
| every glyph maps to GID 0 | 16:38.01 |
| The 3,0 cmap maps 0xF001 to GID 3 | 16:38.55 |
| and that's it | 16:38.59 |
Robin_Watts | what would that mean about a font ? | 16:44.28 |
kens | well, it has at most 1 glyph (other than the /.notdef) | 16:44.46 |
| and only if you use the 3,0 cmap | 16:44.53 |
Robin_Watts | Thanks. | 16:45.54 |
kens | The horizontal metrics table has way more glyphs than that, but the metrics data itself looks broken for any exept the first 4 | 16:45.56 |
Robin_Watts | I strongly suspect that we are extracting the stream from the PDF correctly - it just happens to be a duff stream. | 16:46.56 |
kens | *all* the glyphs, except the /.notdef, have no contrours | 16:47.31 |
| the loca table basically says the font has no glyphs except notdef | 16:47.50 |
| It looks like the font is valid but pointless | 16:48.10 |
| (at best) | 16:48.19 |
Robin_Watts | kens: That's fine. It's a template.pdf for a font house - so there are no glyphs showing in the grid. | 16:49.13 |
| so that kind of makes sense. | 16:49.20 |
kens | Well its a pointless font, there are no glyphs in it :-) | 16:49.32 |
| I like the way the text in teh document is all graphics | 16:55.28 |
Robin_Watts | tor8: ping ? | 16:57.34 |
kens | I see you are doing admin work today Robin :-) | 16:59.02 |
Robin_Watts | We've been letting the bugs pile up for a while. Time for a clear out :) | 16:59.35 |
henrys | kens:what bothered me about that bug was the sego didn't happen with ppmraw which kind of rules out the decoder, but I can't find the problem in the current code so probably not worth fooling with. | 17:01.26 |
| s/sego/segv | 17:01.34 |
kens | henrys I suspect it may be an error condition badly handled by ps2write. | 17:01.44 |
| And the reason I haven't looked further is that reproducing it would be 'difficult'.... | 17:02.06 |
henrys | kens:yes that would be the implication | 17:02.16 |
| have we fuzzed ps2write much ? | 17:02.31 |
kens | No I don't think so, but its 'mostly' the same code as pdfwrite | 17:02.49 |
henrys | kens:true good point | 17:04.11 |
| hi ray_laptop | 17:04.16 |
ray_laptop | henrys: hi | 17:04.38 |
henrys | ray_laptop: how are you doing? | 17:04.49 |
kens | Ah ray is really here now | 17:05.04 |
| Ho are you ? | 17:05.11 |
ray_laptop | henrys: looks like you have a Xmas present from cust 351 | 17:05.16 |
kens | How* | 17:05.17 |
ray_laptop | kens: yes | 17:05.26 |
Robin_Watts | Don't ask Ray how he is, or he'll disconnect again :) | 17:05.48 |
kens | :-) | 17:05.54 |
ray_laptop | earlier I was on briefly to check something from my wife, but I closed the laptop shortly after | 17:06.08 |
| my condition is pretty much the same. The "moisture retention" glasses help a bit | 17:06.40 |
| so I'm able to go longre without refreshing the drops | 17:06.58 |
| but still can't wear my contact in that eye, so can't drive | 17:08.35 |
henrys | ray_laptop: how long can a californian survive without a steering wheel in hand? | 17:12.19 |
Robin_Watts | henrys: His wifi reaches his garage, he'll be fine :) | 17:12.45 |
kens | OK I'm off, I'll be around from time to time, back on the 2nd. Have a good Xmas everyone, | 17:16.52 |
henrys | kens:happy holidays! | 17:21.27 |
Robin_Watts | oops. missed kens. For the logs: Merry Xmas Everybody! | 17:25.19 |
ray_laptop | Merry Christmas, Robin_Watts | 17:34.14 |
| and also to the rest of you. | 17:34.24 |
vecero | merry christmas :) | 19:10.15 |
| has anybody started work on a Wayland-native mupdf? | 19:10.31 |
Robin_Watts | vecero: No. | 19:10.38 |
| Porting the existing viewer should be easy. | 19:10.56 |
| We don't use much UI :) | 19:11.07 |
vecero | yeah, it looks like the interaction w/ UI is quite decoupled | 19:11.23 |
| I just didn't want to duplicate work | 19:11.29 |
Robin_Watts | Go for it, we'll be really interested to see what you come up with. | 19:11.55 |
vecero | is there something mupdf-native I should use where the X11 ones uses XLib, or is the cairo stack ok as a dependency? | 19:12.06 |
| (e.g. for drawing UI text and backgrounds) | 19:12.17 |
Robin_Watts | Relying on something as huge and hairy cairo when you have something as small and nice as MuPDF is... ugly. | 19:12.53 |
vecero | yeah, that was my feel... but there is no Wayland drawing API | 19:13.08 |
| you just hand it filled buffers | 19:13.16 |
Robin_Watts | vecero: Ugh. | 19:13.17 |
| Well, use cairo to start with if that's easiest. | 19:13.47 |
| We can always rejig those parts to use fitz later if we need to. | 19:14.02 |
vecero | I'll try to avoid making it the cornerstone of the thing | 19:14.07 |
ray_laptop | Robin_Watts: bite your tongue !!! Recommending that anyone use an abortion like cairo | 19:17.28 |
Robin_Watts | ray_laptop: If that's the 'standard' way of getting bitmaps/text onto the screen in wayland, then lets take the path of least resistance. | 19:19.45 |
| We can always rework it later. | 19:19.56 |
ray_laptop | Robin_Watts: I know, I forgot the winkie ;-) | 19:27.24 |
| Robin_Watts: it's mostly the awful PDF's from cairo that I find objection with. | 19:27.56 |
| mvrhel_laptop: I'm testing a fix for 693365 now | 19:29.18 |
| mvrhel_laptop: it works OK locally. Just doing a cluster run | 19:29.36 |
| mvrhel_laptop: thanks for analyzing the problem (the hard part) | 19:29.55 |
Robin_Watts | ray_laptop: Is that the easy6.pdf thing? | 19:35.30 |
| clist transparency pattern in 1 band then all bands thing? | 19:35.53 |
Robin_Watts | should just check the bug. | 19:36.09 |
ray_laptop | Robin_Watts: yep | 19:36.14 |
Robin_Watts | excellent. That looked nasty. | 19:36.23 |
ray_laptop | Robin_Watts: I haven't updated the bug yet | 19:36.38 |
| Don't know what's up with my net today :-( | 19:37.56 |
| OK, fix pushed and bug 693365 closed ! | 19:52.03 |
Robin_Watts | ray_laptop: Excellent! | 19:56.52 |
mvrhel_laptop | ray_laptop: that is great | 20:09.56 |
| Robin_Watts: I have a fix for the issue with the error return | 20:10.48 |
| I will get the committed shortly | 20:10.55 |
Robin_Watts | mvrhel_laptop: Ah, brilliant. | 20:11.27 |
mvrhel_laptop | and that is pushed | 20:14.45 |
| I have to run some errands. | 20:15.48 |
| bbiaw | 20:15.50 |
henrys | ah the productivity increase associated with visiting inlaws ;-) | 22:44.31 |
tor8 | Robin_Watts: pong | 23:43.30 |
Robin_Watts | ah, hi tor8. | 23:52.17 |
| Lots of small patches for review on robin/master | 23:52.23 |
tor8 | Robin_Watts: they all LGTM | 23:54.25 |
| I had a brief discussion with sebras explaining the rebind stuff | 23:54.39 |
| I don't think he came to a conclusion which way he preferred, but I'll let him sleep on it | 23:55.00 |
| one question though, about the try_repair | 23:55.18 |
| are we sure we don't leak when we run the repair code on an already loaded xref? | 23:55.37 |
| Forward 1 day (to 2013/12/24)>>> | |