> On Tue, Jun 21, 2005 at 02:15:53AM -0400, Chris Pinkham wrote:
> > Can you take a look at the attached patch and see if it looks like

> Your patch works for me (I tested it on a garbage 5-minute "find-once"
> recording this morning).

Thanks.  I should have been in bed last night hours before I wrote that
patch and sent the email. :)

> > +#define ClearJobMask(mask)               mask =3D JOB_NONE;
> > +#define JobIsInMask(job, mask)           ((bool)(job & mask))
> > +#define JobIsNotInMask(job, mask)        (!(JobIsInMask(job, mask)))
> > +#define AddJobsToMask(jobs, mask)        mask |=3D jobs;
> > +#define RemoveJobsFromMask(jobs, mask)   mask &=3D (~jobs);
> > +
> 
> The macro args should (always, IMHO) be parenthesized. Otherwise,
> things like:

See what I mean (about the sleep).... :)  I sent the code totally
un-debugged.  I tested compilation but not functionality.

I moved these into the JobQueue class so the #defines are gone.
2 birds with one stone, blah blah blah...

>       JobIsInMask(job, JOB_TRANSCODE | JOB_COMMFLAG)
>       RemoveJobsFromMask(jobs, JOB_TRANSCODE | JOB_COMMFLAG)

This is what I was intending to be possible.

> > +/* vim: set expandtab tabstop=4 shiftwidth=4: */
> 
> Heh. This is good :).

Yeah, I've been putting this in the source files that I have created or
added to CVS.

>               // Don't commflag commercial-free recordings
>               if (!curRecording->chancommfree)
>                       RemoveJobsFromMask(JOB_COMMFLAG, autoRunJobs);
> 

I agree about adding this, so it's in my tree.

>       if (tmpInternalState !=3D kState_WatchingLiveTV &&
>               curRecording &&
>               JobIsInMask(JOB_COMMFLAG, autoRunJobs) &&
>               (earlyCommFlag ||
>                       JobIsNotInMask(JOB_TRANSCODE, autoRunJobs) ||
>                       !transcodeFirst))

This needs a little tweak, but I expect if you had compiled your
email and tested you'd have seen it also.

The earlyCommFlag needed to be moved out one level and AND-ed, not OR-ed. :)

Thanks for looking at it, I'll get the changes tested and into CVS tonight.

RE: your other email after this one:

> An experiment to help confirm/refute this hypothesis is to set up a
> find-once scheduled recording on a non-commercial-free channel. In the
> post-processing options, turn off commercial-flagging.

> If I am correct, the recording will be commflagged anyway (on an
> unpatched mythbackend), because the hard-coded default value for
> commflagging is "true".

This is exactly what's been happening.  Bug #285 is "FindOne schedule
ALWAYS does CommFlagging in 0.18".

Thanks for tracking this down and for taking a look at my
sleep-deprived patch. :)

-- 
Chris

_______________________________________________
mythtv-dev mailing list
[email protected]
http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-dev

Reply via email to