IRC Logs

Log of #ghostscript at irc.freenode.net.

Search:
 <<<Back 1 day (to 2013/04/08)2013/04/09 
wordToDaBird question for the mupdf guys, would you like for the iPhone app to allow for printing of the document?00:18.18 
kens Oh dear chrisl, avadhut seems even more dense than usual....07:19.01 
chrisl kens: yeh :-(07:19.13 
  Hmm, actually, maybe not.....07:23.18 
kens DO we have any jbig2 devices ? o.O07:23.34 
chrisl gdevjbig2.c07:23.45 
kens Good grief07:23.54 
  THey don't really listen though, do they, its not going to be significantly better than CCITT G4 faqx.07:24.25 
chrisl And the Makefile has a line "DEVICE_DEVS7=$(PSD)jbig2.dev" - but the jbig2 device doesn't appear07:24.41 
  Looks like there is a bug in the configure script :-(07:27.57 
kens Shows how many people use jbig207:28.19 
  Even when you fix it they'll probably just complain that its not smaller than G407:28.34 
chrisl Well, given that the jbig2 output device is commented as being "for testing", I don't hold out much hope of it working well!07:29.24 
kens You should probably point this out, and explain that's why it isn't present in the build ;-)07:29.48 
chrisl It actually should be present in the build when we build with Luratech, but the Makefile ends up with "$(PSD)jbig2.dev" when it should have "$(DD)gdevjbig2.dev" in it07:30.52 
kens I bet that's an oversight from when Ralph reorganised the directories07:31.24 
  Which shows how long its been since anyone last built with this enabled07:31.39 
chrisl Everyone that builds with Luratech should get it, it's added automatically to the Makefile when configure sees we're using Luratech07:32.43 
kens Well, the last time anyone *wanted* it then07:33.31 
chrisl So, do I be helpful, or do I reply to what they've actually reported?07:34.09 
kens Well, they have helped you find an oversight07:34.33 
  But I'd still be inclined to point out that the device is 'for testing' to forestall the next set of 'it doesn't work the way we expected' bugs07:35.04 
chrisl True, but they've asked about jbig2DEC and want to know why there isn't a jbig2 *output* device!07:35.16 
kens Yes, that was what I meant when I said they were being denser than usual....07:35.35 
  ANyway. if you point it out you'll just get another one later07:35.50 
  Hmm fixing the widths stuff improved the output (very slightly, you wouldn't see it without specifically looking) and made teh final compressed file 10k smaller, which is pretty good.07:36.42 
chrisl I'll post them a fixed configure script.07:36.56 
kens Yeah, seems reasonable. But I would still poitn out about the device though07:37.15 
chrisl I will, and about how pointless JBIG2 is when you deal with plain raster data07:37.46 
kens :-)07:37.54 
  As expected my widths change results in 2700 differences :-(07:38.16 
  Hopefully they are all miniscule movements o text but I'll have to check them all. Marcos will love me....07:38.38 
Robin_Watts wordToDaBird: Yes. Are you volunteering?09:14.11 
  kens: bmpcmp -w 3 ?10:27.03 
kens Hmm maybe10:27.17 
  Looks like the cluster restarted the bmpcmp all on its own, and this time it seems to be nearing completion. I confess I have no idea what's going on here. My last bmpcmp was bigger and completed OK but a number of the images were 'unsupported data type' again.10:41.33 
  Robin_Watts : what do red pixels in the 'diff' window mean ?11:08.39 
Robin_Watts Differences are either green or red. One of them is for 'small' differences, but I can't remember which.11:09.17 
kens Hmm, maybe red, I've never seen those before, perhaps those are inside the 'w' number ?11:09.48 
Robin_Watts kens: could be.11:09.57 
  I would have said that green was inside the w number and red was bad, but that doesn't fit with your first bitmap result...11:12.01 
kens Normally I don't use w and tehy are all green11:12.16 
  THough I would have thought that a difference inside 'w' would be green, that would make sense to me....11:12.55 
Robin_Watts kens: There is a comment at the top of bmpcmp.c I think, but I wouldn't trust the colors exactly, as I may break out of the search early...11:13.36 
kens TBH its not important, as long as hte diffs are highlighted somehow, I need to look at all of tehse11:14.05 
Robin_Watts kens: Halftoned stuff clearly throws it all off.11:14.28 
kens Its worse with halftoned data certainly but I see it in other places too11:14.45 
Robin_Watts You might want to retest with --filter=ppmraw etc to avoid the halftoned cases, then bmpcmp that.11:14.48 
kens Not that worried, its only 32 pages11:15.03 
  In this case I'm only looking for gross differences with text position11:15.29 
Robin_Watts Gah. This armeabi thing is killing me.11:15.47 
  I was sure I had the compile flags right this time :(11:16.00 
kens is glad to be nowhere near that11:16.01 
Robin_Watts goes for a run.11:16.40 
cinch can the -dNOGC flag be recommended in production? it speeds up conversion here by 10-20%12:17.00 
kens It turns off garbage collection, so objects which are no longer in use will not return their memory to be reused until the process exits. Obviously this will increase memory consumption. If you find it works then you can use it, its really up to you12:18.17 
cinch ok thank you 12:19.19 
  with our PC's memory shouldn't be an issue, i'll see how it goes12:19.39 
tor8 Robin_Watts: I can't help but think the compressed buffer creation for images in cbz and xps could use a wrapper function12:27.26 
Robin_Watts tor8: Where are you looking?12:34.49 
  I've just been working in the whole images area, but I haven't pushed the final version for review yet.12:35.15 
  (It's still going wrong in some cases I can't understand)12:35.24 
  But I got sidetracked into this damn v8 problem.12:35.36 
  I am tempted to just set the build up so that armeabi phones don't get forms etc.12:35.54 
  at least until I get an answer from the v8 devs.12:36.13 
tor8 just peeking at your fz_image patch12:37.19 
  Robin_Watts: sebras mentioned a desire for a slow simple plain c javascript interpreter and wondered "how hard can it be?" yesterday12:38.15 
Robin_Watts I've written an ecmascript engine in C before (for the flash player at my last job).12:39.59 
  The answer is that the central engine ain't that hard. The libs are the killer.12:40.16 
tor8 maybe time to try out spidermonkey? it looks to have a C api (or very C-like if indeed it is c++)12:47.48 
Robin_Watts tor8: crap license though?12:56.43 
tor8 MPL, should be good I think12:58.17 
Robin_Watts I have 1 last idea to try after lunch before I give up for now.12:58.27 
tor8 Robin_Watts: wikipedia lists spidermonkey as the js engine in adobe reader13:41.02 
henrys 5 of the meeting14:55.17 
Robin_Watts I've got a friend who's in trouble with his car. Flat tyre, and has slipped off the jack etc.14:55.18 
  I'm going to have to run out to help him. I'll be back as soon as I can. Sorry!14:55.34 
henrys no problem14:55.40 
Robin_Watts I have nothing particular for the meeting except to say that I hate compilers/linkers/build systems more than usual this week.14:56.13 
henrys paulgardiner, tor8:if you are going to be around a while we could do the meeting after the gs meeting?14:56.46 
paulgardiner Yeah, that should be ok.14:57.55 
tor8 okay.15:18.14 
Robin_Watts back, sorry about that.15:19.06 
  Right, my last ditch attempt to make armeabi v8 libraries just failed.15:26.15 
  so I'm going to set it up so that armeabi builds don't get v8.15:26.43 
  marcosw: kens has been experiencing problems with bmpcmp.15:42.35 
kens intermittent though15:42.46 
marcosw what did I break now? :-)15:42.56 
Robin_Watts I had a quick look, and it looked like not all of the results were getting back from the nodes.15:43.05 
  sometimes there would be 10 baseline files and 7 'new' files or something, out of 21 tests.15:43.32 
  so the only ones that got results were the 2 or 3 that happened to have both. The others had an error from bmpcmp saying it couldn't recognise the image format.15:44.05 
deleet Robin_Watts: spidermonkey is easy to compile for, I can give you the configure I use15:44.47 
marcosw Robin_Watts: is the latest bmpcmp one that has issues? The logs won't have much information for earlier jobs.15:46.08 
kens I think the latest one was OK15:46.22 
marcosw kens: the next time it happens send me an email without running another bmpcmp and I'll have a look. From Robin_Watts' description it's possible that some of the nodes are either missing some software or are otherwise broken; that would explain why it's intermittent.15:49.21 
kens ok marcosw15:49.32 
marcosw kens: you could run one now, assuming that your latest clusterpush produced differences.15:50.23 
kens I did a bmpcmp on it and it was OK15:50.39 
henrys was mvrhel_laptop supposed to be out today?15:59.58 
kens holiday I think16:00.05 
  yes 8th until 12th16:01.12 
henrys for the meeting I just had a bunch of bugs to discuss starting with status of alexcher's 693658 and 69365916:01.27 
  and some reminders from the agenda for chrisl: svg removal and vmthreshold 8 meg16:02.06 
chrisl henrys: yes, haven't forgotten either of those16:02.54 
  henrys: question: what's the process for when we close a bountied bug?16:04.05 
henrys chrisl:you can assign it to me. I think Miles is used to talking to me about the bounties but I don't feel strongly about it.16:04.53 
alexcher henrys: I've picked most easy problems from these cases. The rest should be, probably, re-tested and separated into individual bugs.16:05.12 
chrisl henrys: that's fine, I'll assign it to you16:05.30 
henrys alexcher:well do you need marcosw to help you with that - he typically does that.16:05.43 
marcosw now that I've written a script that can enter bugs it's easy to enter individual bugs :-)16:06.19 
alexcher henrys: yes, this would help a lot.16:06.59 
henrys marcosw:I'll take a copy of that.16:07.03 
marcosw henrys: as is true for almost everything I do it's undocumented and buggy, but I can email it it you.16:07.57 
henrys without michael or ray I didn't have any other stuff, they have the interesting bugs. Does anyone know if 693583 has been fielded at all?16:09.01 
  alexcher:so assign both bugs to marcos16:09.43 
alexcher OK16:10.04 
Robin_Watts henrys: Michael and Ray discussed 693583 on here, with me (and maybe others) chipping in a bit.16:10.58 
  They have a plan, I believe.16:11.07 
henrys Robin_Watts:thanks16:11.54 
  I'll text him16:12.00 
  kens:I was going to ask you about a few of my valgrind issues to do with high level color/patterns in PCL but we can probably defer that.16:14.23 
  marcosw:are you okay doing the assignments for those bugs.16:15.57 
  ?16:16.00 
  let me know if you want me to do some.16:16.13 
  I did text ray but I don't have anything else for this meeting.16:16.50 
marcosw henrys: you mean the bug i'm going to enter from splitting up 693658 and 693659? I was going to use the same dartboard as I used for the valgrind issues.16:17.27 
henrys well since the dartboard talks back it shouldn't be a problem.16:17.56 
kens henrys I think I still havean enhancement for hiigh level patterns in PCL16:20.04 
henrys kens:I do believe that is the issue with 693833 and its duplicates16:21.22 
kens I cna look at thaT NOW, BEEN DISTURBED FORM COLOUR STUFF, SO IT S NOT A PROBLEM16:21.55 
  sorry caps lock16:22.19 
Robin_Watts removes the voltage from kens underpants.16:22.23 
henrys pcl->pdf has that effect on him ;-)16:22.40 
  kens:are you off color until michael returns?16:23.11 
kens not totally, but its a natural break atm16:23.33 
henrys kens:okay I can simplify files as needed let me know.16:23.53 
kens I'll start tomorrow :-)16:24.02 
alexcher I need to leave at 12:30 for family reasons.16:25.01 
henrys if kens or chrisl or alexcher have any insight into pdf signatures (see paul's status report) please weigh in16:25.24 
  okay alexcher.16:25.31 
kens No idea sorry16:25.34 
paulgardiner henrys: actually, I think I'm past my confusions now.16:25.50 
henrys paulgardiner: oh great16:26.07 
paulgardiner Not to say that it's easy to implement, but I think I can see how it works now.16:26.31 
  I'm now looking at how to apply openssl.16:27.13 
  We do has some bigish jobs if we wish to sign documents, in that we need to support saving by partial update.16:27.45 
Robin_Watts We need openssl because of certificates etc?16:27.55 
paulgardiner Robin_Watts: yeah, all sorts of standards are involved, pkcs7, asn1 rsa x50916:28.35 
henrys good segue into the mupdf meeting.16:28.55 
Robin_Watts We've previously done stuff ourselves (see the md5, rc4, aes stuff).16:29.17 
henrys why partial update can parts of the document be signed?16:29.22 
Robin_Watts It's always a shame when we pull in new libs. Can we maybe chip the bits off OpenSSL that we need?16:29.45 
paulgardiner henrys: typically you sign the doc in one state, but want to alter it without removing the initial signature16:30.09 
  Robin_Watts: I don't think we need to make the MuPDF library depend on openssl. Just signature-enabled apps16:30.48 
henrys paulgardiner: okay I should probably read the spec. I assumed you encrypted with a private key and then it would be readable with your public key. 16:31.22 
paulgardiner Robin_Watts: in any case, I think a first implemenation should use openssl. We could then implement our own stuff if we thought it reasonable16:31.24 
kens henrys can you point me at one of teh nug numbers for PCL an dhigh level colour ?16:32.04 
  bug*16:32.09 
paulgardiner henrys: you hash the doc and then privater-encrpt the hash16:32.14 
Robin_Watts henrys: In some cases, you want to sign a document to prove it's authentic (with your private key), but to leave it readable for the world.16:32.17 
  So someone might "sign" a draft of a document to say they've approved it.16:32.42 
paulgardiner henrys: but you then cannot change the doc at all without either invalidating the signature, or using partial update.16:32.47 
Robin_Watts Then someone else might want to sign that too.16:32.50 
paulgardiner Robin_Watts: yes, or sign as author of a form, for other people to sign when they have filled it in16:33.38 
henrys paulgardiner:so somehow the state is saved I can say A signed one part and B signed after this modification?16:33.57 
paulgardiner Signing as author is common so as to be able to define the rights of others to make changes16:34.11 
henrys kens:693833 and it's dups in the comments16:34.26 
Robin_Watts henrys: AIUI, the first signing saves the document as normal, with a signature section that says "The combination of the bytes of the document with my private key is... "16:35.15 
paulgardiner henrys: the state is saved by the incremental update mechanism, just in that it creates a new doc that has the previous one as a prefix16:35.25 
Robin_Watts People can then verify that using the private key.16:35.44 
  public key.16:35.47 
henrys got it thanks.16:35.54 
Robin_Watts Then if people want to sign it again... the incremental update thing needs to be used.16:36.07 
paulgardiner If I've said "partial update" anywhere, I meant "incremental update"16:36.08 
henrys paulgardiner:is that something for tor8 or Robin_Watts or are you doing that?16:36.41 
  incremental update16:36.56 
Robin_Watts That's something that we're all going to have to think about I think.16:37.11 
paulgardiner henrys: I was going to look at checking signatures first, which involves other nasty things, but not partial update.16:37.17 
Robin_Watts Incremental update is not hugely compatible with the way we work, I fear.16:37.46 
paulgardiner I'd be interested to have a go at incremental update, but as Robin_Watts says, we'll all need to discuss it, and whether I should do it probably depends on your priorities.16:38.03 
Robin_Watts certainly not the way saving currently works.16:38.09 
  I think it may require some tweaks to our core data structures; I think we only store 1 object per number currently.16:39.01 
  we'd need to extend that to hold older generation object numbers too.16:39.18 
paulgardiner Yeah, doesn't sound like rocket science though.16:39.31 
henrys Robin_Watts:once you have mupdfwrite going would it be possible to simply output something afresh as a stopgap?16:39.44 
Robin_Watts No, but there may be lots of buried assumptions.16:40.00 
tor8 if we use a big enough chunk of code for encryption, I think we should just use the library16:40.03 
paulgardiner henrys: that's sort of exactly what you can't do because the hash must not change.16:40.17 
Robin_Watts henrys: We can already save documents.16:40.24 
tor8 partial update should be possible by just flagging changed objects in the xref struct16:40.37 
henrys paulgardiner: oh of course.16:40.44 
Robin_Watts The bit that's missing for pdfwrite is the graphical object -> pdf operators conversion.16:40.52 
tor8 then when saving we'd open as append (or copy the original first) then write the changed objects and write a completely new xref at the end16:41.01 
paulgardiner tor8: yeah, that doesn't sounds too horrendous... until we actually try it that is. :-)16:41.33 
tor8 being fancy we could do the whole "generation number" and partial xrefs scheme, which will likely fail horribly everywhere16:42.07 
paulgardiner We'd also need to be able to read in such files and not lose the fact that there are two versions of the doc16:42.15 
tor8 paulgardiner: shouldn't matter (except for xref duplication bloat) or what do you mean?16:42.54 
Robin_Watts Right. Currently when we load, we throw away all references to old objects - we only keep pointers to the most recent generation of objects in memory.16:43.18 
paulgardiner Part of the checking procedure is making sure that the later version didn't make changes that the pervious version said were disallowed16:43.25 
tor8 (as an aside, old old old versions of mupdf had the xrefs in a linked structure like in the pdf file, with different sections)16:43.39 
paulgardiner git reset :-)16:44.25 
tor8 paulgardiner: this might've been back before the darcs time16:45.00 
  sebras may have a tarball of the original mupdf cvs repo somewhere16:45.12 
paulgardiner tor8: yeah, I thought it might have been16:45.20 
henrys get out you haskell interpreter ;-)16:45.32 
  oh before darcs even16:46.02 
tor8 henrys: yeah, I think that was how the original mupdf that I wrote before coming to Artifex worked16:46.27 
henrys the other mupdf issue is Robin_Watts schedule for raph.16:46.46 
paulgardiner "Utility based on the author's "theory of patches" in which they are likened to operators in quantum mechanics."16:46.47 
tor8 robin mentioned writing an evince backend that uses mupdf as a way to get into ubuntu16:46.53 
Robin_Watts I don't think it's a huge deal to move the xrefs to be a linked list of blocks again.16:47.24 
henrys we need time estimates and then send that off to miles, I don't think we have a problem raph has gone dark but I think we'll do better with a schedule anyway.16:47.45 
tor8 Robin_Watts: the xref loading code would have to be rejigged, but should be "a small matter of programming"16:48.08 
Robin_Watts That way we can artifically 'step back' in time by moving our pointer to blocks, and thus change back to read each old version of the file in turn.16:48.23 
paulgardiner Robin_Watts: oh nice16:48.37 
  I hadn't twigged that16:48.48 
tor8 so basically we can say "load object N" and it'll go through the xref sections from newest to oldest to find one16:49.00 
Robin_Watts henrys: tor8 said that the original estimate for the bidir stuff was still good.16:49.06 
tor8 and I guess we can add an optional argument to skip a number of xref sections to get at an older version16:49.27 
Robin_Watts tor8: yeah. And by changing the start of that search, we can look at older versions of the document seamlessly.16:49.32 
henrys tor8:would you like a bug for localization or are you going to followup soon?16:49.33 
tor8 I hate the translation work. I've been going through the strings in the android app. There are a number of inconsistencies in there I'd like to fix, and I wonder how some of the strings will translate without context.16:50.22 
  The website will need some redesigning if we want to have multiple language versions of it16:50.52 
Robin_Watts henrys: I was trying to work on the image extraction stuff at the end of last week. It has meant that we need to rejig bits of the code so images can be extracted in their still compressed form. That's almost working, but I've got some problems in release builds that I need to sort out.16:51.05 
henrys Robin_Watts: so I should take your last schedule and use the first schedule to make deadlines?16:51.45 
Robin_Watts I got sidetracked by someone pointing out that we can't do formfilling on armeabi devices, as our v8 build won't work on them (only on armeabi-v7a).16:51.46 
tor8 the bidi stuff should be easy to get something working once I can focus on it. It'll be something fairly simple, not the full bidi algorithm, but should be extendable if a need crops up16:51.58 
Robin_Watts henrys: I think so.16:52.15 
  Turns out that V8 is about to drop all support for pre v7a devices anyway.16:52.38 
  And try as I might, I cannot get a working build out for older devices anyway, so I think we just say that if you want form filling you need a newer device.16:53.13 
tor8 Robin_Watts: hence my suggestion to maybe look at other javascript engines sooner rather than later. still, it may be even more trouble to compile and use spidermonkey. there's still 40+mb of source in mozilla/src/js16:53.50 
henrys tor8:I think it would be easier if you just let the consultant f*ck it up then you'll have to fix it. -- in the interest of moving things along.16:54.16 
Robin_Watts My phone came with eclair on, and has since been updated to froyo and gingerbread, and it's v7a.16:54.49 
paulgardiner tor8: someone on the talker earlier mentioned success in building Spidermonkey for Android.16:54.55 
tor8 henrys: okay. they do say on the website that they have "incremental translations" so if you upload the same file again, they'll only do the diffs16:54.57 
Robin_Watts So I think non v7a devices are VERY old.16:55.00 
  tor8: I fear the time taken to build spidermonkey will be even larger than trying to make v8 work.16:55.36 
paulgardiner I'd be quite keen to try Spidermonkey as an alternative engine, but I can see it taking at least a couple of weeks16:55.46 
Robin_Watts And the population of armeabi phones are vanishingly small now I think.16:56.05 
tor8 I'm okay with telling old phones to go away if they want JS support.16:56.40 
  at least we aren't a paid app :)16:56.53 
Robin_Watts tor8: No, we tell them "get me a v8 build that works" :)16:56.56 
henrys Robin_Watts:I wouldn't worry about it at all.16:57.00 
Robin_Watts So I'm back on the image decode stuff now (or will be tomorrow)16:57.25 
henrys okay anything else for the meeting?16:57.35 
Robin_Watts I just had a conversation with our mupdf customer.16:57.40 
  They are interested in the work we've done for text extraction.16:57.56 
  They have some documents that have the first line of the paragraph emitted at the end etc.16:58.14 
  so they will try to supply those to us as examples for us to improve our code.16:58.41 
  They are also interested in column extraction etc.16:58.50 
  so we might get some docs to drive that work soon.16:59.01 
henrys Robin_Watts: that's good.16:59.16 
tor8 Robin_Watts: sounds good.17:01.48 
Robin_Watts paulgardiner: 3 Androidy reviews on robin/master (plus 2 work in progress patches - ignore them)17:12.59 
  I'm assuming the meeting is over? No one in the entire history of the planet has ever needed a cup of tea more than I do now.17:13.52 
  henrys: Something was mentioned at the meeting that didn't get a comment... I briefly discussed the idea of writing an evince backend that calls mupdf.17:48.26 
  That would get us a viewer on lots of popular unixes.17:48.48 
  s/briefly discussed/briefly discussed with tor8/17:49.08 
henrys Robin_Watts:I don't see any reason why evince would use mupdf instead of poppler, there is a backend for ghostscript too, nobody uses it.17:52.53 
Robin_Watts henrys: It would be a choice for people.17:53.39 
henrys OTOH if we bring a viewer to linux with forms, reflow etc then there is a reason to use it.17:53.55 
Robin_Watts The theory would be that it's simpler to write a backend than to write a complete viewer.17:54.08 
  evince does forms etc.17:54.17 
henrys Robin_Watts:why would anyone switch out the default poppler?17:56.31 
Robin_Watts well, our contention is that we render better/faster etc, right ?17:57.03 
kens OK i'm heading off for the night now17:58.33 
henrys I see this the final death blow to a real viewer to replace gsview.17:59.36 
Robin_Watts henrys: Ah, right. I'd forgotten about that.18:01.26 
  Yeah, we'd need our own viewer for that.18:01.34 
henrys Robin_Watts:what about helping tor8 along with the viewer - which could have reflow, distilling etc. but if you think there is promise with evince I'll go along with it.18:02.43 
Robin_Watts henrys: I'm not sure that having 2 of us working on a linux viewer would be productive.18:03.36 
  I'd be more tempted to look at what michael comes up with for windows 8, and then seeing if some of that can be pulled back to win32.18:04.00 
  I suspect that may not be easy, but...18:04.21 
henrys tor8:what is the status of the viewer?18:04.37 
Robin_Watts The android viewer for example, depends massively on the android display structure (views, adapters, etc).18:05.07 
  If Windows 8 has a similar thing, then we'd end up needing to reimplement all that for windows 32 as a runtime layer.18:05.41 
henrys yes we have the same issues for all the platforms - what if we have an iOS customer?18:08.23 
  that wants all the android features.18:09.04 
Robin_Watts henrys: Well, iOS has its own 'display/interaction system' that Tor has already battled with.18:09.48 
  so things pan/zoom etc in a standard iosy way.18:10.01 
  android/ios/windows 8 being touch based things, have at least some of the logic for this stuff standardised.18:10.35 
  linux and windows don't.18:10.45 
  (standardised for their platform I mean, not standardised across platforms)18:11.00 
  If you want to put a transparent menu bar on a view in android, well, there are commands to do that - you add it into the layout structure and the display system takes care of it.18:12.28 
  I bet metro has such things too.18:12.52 
  but with win32 you either do it by steam, or you sell your soul to MFC, AIUI.18:13.38 
  Or you plump for something like GTK, but Tor tried that and it's a non-starter on windows.18:15.37 
henrys I thought we could focus on windows 8 and not worry about older windows, - a metro app but I haven't studied it carefully.18:18.04 
Robin_Watts henrys: Depends if you buy into "The Desktop is Dead" thing.18:18.31 
  I can't see the windows desktop dying within the next couple of windows releases myself (famous last words)18:19.45 
  I suspect it's the netbook/desktop divide again (and latterly the tablet/PC divide).18:20.17 
sebras Robin_Watts: why was GTK a non-starter on win?18:20.34 
  Robin_Watts: was it the DLLs..?18:20.41 
Robin_Watts netbooks/tablets/Metro is great for consuming information produced elsewhere.18:20.41 
  But if want to create information, you need a proper desktop/keyboard/mouse/ etc18:21.08 
  sebras: Yeah.18:21.10 
  We could try looking at a static build of Gtk for windows, but Tor8 said that had been tried and didn't work.18:21.44 
sebras Robin_Watts: is that a big issue? many programs come with installers... and if mupdf on windows is supposed to look like the others... ;)18:21.46 
Robin_Watts sebras: Tor8 seemed to think it was a showstopper.18:22.05 
ray_laptop hi, all. Sorry for missing the meeting. Today was my day for car trouble18:22.11 
sebras he's probably right.18:22.15 
Robin_Watts sebras: But we should think about it. Installing properly would make it a lot more palatable.18:22.48 
ray_laptop Robin_Watts: do you have time for a question (a second question, that is -- this being the first) ?18:23.08 
Robin_Watts ray_laptop: Just time for one, sorry. :)18:23.25 
sebras Robin_Watts: yes, but I fear that none of your would appreciate dealing with .msi, nsis or whatever is the installshield of the day...18:23.40 
Robin_Watts sebras: We have a chrisl for that :)18:23.51 
  ray_laptop: Go for it...18:24.24 
ray_laptop Line 486 of base/gximono.c is "blamed" on you. This is a valgrind issue because it advances psrc to an uninitialized area (past stop and past endp)18:25.40 
  eventually it encounters a non-zero byte and stops18:25.57 
  but the line 490 has a comment: "Note, endp NOT stop" that I don't understand since before the loop we do "stop = endp" and the loop (AFAICT) doesn't change stop or endp18:27.34 
  Also, this coding method of advancing psrc in a loop without checking for endp as well as some check based on comparisons of *psrc seems to be prevalent in this code18:29.34 
Robin_Watts ray_laptop: I vaguely remember this.18:30.28 
henrys ray_laptop:I thought there were sentinels in that code such that checking wasn't necessary but I'll be damned if I can find them on rereading. Is it possible they were removed.18:30.32 
  ?18:30.40 
Robin_Watts I think maybe I expanded out the cases here or something?18:30.53 
ray_laptop henrys: same here18:31.09 
  with bug 693735 it advances well past 'endp' and fixing just that line seems OK.18:32.06 
  but if I try and fix all of the spots that do similar things, I get thousands of diffs18:32.42 
tor8 you can't build gtk statically18:33.48 
Robin_Watts tor8: why not? The build system just doesn't cope ?18:34.35 
ray_laptop BTW, I changed the subject of that bug since it used to say something about "in alloc_acquire_chunk" which was wrong. That was simply the function that allocated the block that we eventually drifted into. The real valgrind culprint was image_render_mono18:34.40 
tor8 Robin_Watts: it's officially Not Supported ^TM18:36.30 
Robin_Watts ray_laptop: Ah!18:36.39 
  I remember this bug.18:36.44 
tor8 the build system can't do it, and I guess there's lots of assumptions in the code that rely on dynamic linking18:36.58 
Robin_Watts I don't remember the stop/endp thing though.18:37.21 
  ray_laptop: But I'm not responsible for the hunting forwards too far, as far as I can see.18:38.22 
  Blaming that gets me back to Henrys in 1998.18:40.30 
  And I think that's the initial import :(18:40.48 
  ray_laptop: So your fix is to check in the loop for psrc < endp ?18:41.23 
  tor8: OK, so how would you feel about a viewer that required an installer? Went into a directory with all the required DLLs etc.19:01.08 
  It's not as nice as the current 'all inclusive' binaries, but as gsview it's going to need a ghostscript installation too, right?19:01.44 
  Also, I think I just fixed my image problems - you were saying you'd like a helper function or something earlier? Can you expand on that?19:02.14 
ray_laptop Robin_Watts: sorry, I was on the phone. Yes, my change was to this: for (; psrc < stop && !*psrc; ++psrc) {19:05.27 
  Robin_Watts: but I still don't understand the "endp NOT stop!" comment on line 49019:06.29 
Robin_Watts Sounds good to me.19:06.34 
  Me either :(19:06.37 
ray_laptop AND I don't understand why fixing all of the other loops that appear to ignore the 'endp' and 'stop' when advancing psrc causes so many diffs19:07.40 
  unless I messed up my fix. Anyone willing to review my diff on that ?19:08.04 
tor8 Robin_Watts: installer's fine. means we could possibly stop including droidsansfallback as a compiled in blob, if we can reliably find the file path.19:08.48 
ray_laptop in the meantime, I will go ahead and commit this fix for the bug case, and look at the other fixes more carefully19:09.13 
Robin_Watts ray_laptop: Good or bad diffs?19:09.35 
  Sure, I'll look at your diffs.19:09.48 
  your patch I mean.19:09.56 
  tor8: OK, so we're back on track with a Gtk based viewer then. How is that going?19:10.18 
henrys ray_laptop:are you in the masked case?19:13.29 
sebras Robin_Watts: re: endp vs stop... the comparison used to be psrc >= stop in gs 5.50...19:14.09 
ray_laptop henrys: the comment above the block says "Slow case, masked, not orthogonal."19:14.39 
  Robin_Watts: I'm running the bmpcmp to see what I get from the first few (1000) diffs19:20.20 
  at least it'll help me hone in on a simple, obvious file to see what I might have done wrong19:21.17 
  no takers on reviewing the diffs (git format-patch)19:22.38 
  :-(19:22.45 
henrys ray_laptop:I thought we just pushed to our user repo?19:23.45 
  but send it to tech19:24.03 
Robin_Watts ray_laptop: I said I'd look.19:24.58 
henrys I'm not convinced you need the check, if we knew there was at least one transition we'd hit the break inside the for loop, right?19:25.02 
  i.e. stop is set because you are non orthogonal.19:25.48 
Robin_Watts ray_laptop: Easiest way is for you to commit locally (as you've done), then push to your user repo and we can look there.19:25.59 
henrys sebras notes the 5.50 difference, it's probably worth tracking down the history.19:36.39 
Robin_Watts henrys: I changed it from stop to endp.19:39.16 
  I was probably mistaken in thinking it did anything.19:39.38 
ray_laptop Robin_Watts: Did you add the comment as well ? (seems like you must have had a reason)19:40.08 
Robin_Watts I did add the comment, and I can't immediately see why.19:40.35 
  As you say, endp == stop, so...19:40.43 
ray_laptop OK. np19:40.45 
  poor old x6 -- It's stuck "Installing Ghostscript" and everyone else finished19:41.50 
henrys sorry I'll have Macpro and henryx6 back in a minute - having some work done in the house.19:47.26 
  with the pci sad much less than a minute actually ;-)19:48.59 
  s/sad/ssd19:49.04 
Robin_Watts ray_laptop: Based on those bmpcmps, it looks like at least some of your fixes are incorrect. test 16 for example.20:00.40 
  I have to go to dinner now, but if you put the patch somewhere, I will look tomorrow.20:00.58 
ray_laptop Robin_Watts: agreed. I think tests/Ghent_V3.0/052_Font_report.pdf page 2 is a good place to start. The "xF" is particularly egregious.20:27.29 
  AND I can reproduce it on Windoze !20:28.26 
wordToDaBird Robin_Watts, yes, I am volunteering if it isn't needed within the next 2 weeks.23:00.54 
  Got a big project I am working on for work, but in about 2 weeks I should be free and shouldn't take me more than a day or two maybe a week at most to do it.23:01.19 
Robin_Watts wordToDaBird: Brilliant!23:02.28 
  henrys: ping23:14.01 
  I believe bug 693639 has been finished for a while. Tor had mentioned (to me) the possibility of offering zeniko a bounty for it, and he's just mentioned that on the bug.23:15.26 
 Forward 1 day (to 2013/04/10)>>> 
ghostscript.com
Search: