To GIBMAN: problems with Build 19429 (1 Viewer)

iosub

Portal Pro
April 26, 2006
573
30
San Sebastian
I have send you a email.. but just is case you don't read it
===========================================
Hi Gibman

I have found a lot of problems with your last changes con"IsRecordingActual" on tvrecorded.cs

if (isRec)
{
if (aRecording.Title.Equals("manual"))
{
return true;

if I'm currently recording on the same chanell and on the "recorded database " there is a "manual" recording then is marked as recording.. what is wrong
also, on the same "IsRecordingActual"
IList prgList = (IList)Program.RetrieveByTitle(aRecording.Title);

if (prgList.Count > 0)
{

foreach (Program prg in prgList)
{
if (aRecording.StartTime <= prg.EndTime)
{
return true;

if there is a schedule "alwais record on this channel" and a recorded show if found is also marked a "recording"

There is another bug
private void OnDeleteRecording(int iItem)

Line FileInfo fInfo = new FileInfo(g_Player.currentFileName);
if I select a show to delete, sometime g_player.currentFileName is "" so there is a exception and the show is not deleted


Hope this helps!

Iosu
 

gibman

Retired Team Member
  • Premium Supporter
  • October 4, 2006
    2,998
    1,372
    Aarhus
    Home Country
    Denmark Denmark
    Hi!

    I didn't understand much of what you wrote.

    Could u get on IRC instead ?

    The delete problem is easily fixed, although g_player.filename should never be empty.

    bool isRecPlaying = false;
    if (g_Player.currentFileName.Length > 0)
    {
    FileInfo fInfo = new FileInfo(g_Player.currentFileName);
    isRecPlaying = (rec.FileName.IndexOf(fInfo.Name) > -1);
    }

    /gibman
     

    iosub

    Portal Pro
    April 26, 2006
    573
    30
    San Sebastian
    Hi!

    I didn't understand much of what you wrote.

    Could u get on IRC instead ?

    The delete problem is easily fixed, although g_player.filename should never be empty.

    bool isRecPlaying = false;
    if (g_Player.currentFileName.Length > 0)
    {
    FileInfo fInfo = new FileInfo(g_Player.currentFileName);
    isRecPlaying = (rec.FileName.IndexOf(fInfo.Name) > -1);
    }

    /gibman


    I'm at IRC...

    The problem is on "isrecordingActual"
    the line
    bool isRec = server.IsRecording(aRecording.ReferencedChannel().Name, out card);
    is always true if on the refencedclannel().name there is a recording in place and you are checking to build the list

    The problem is that after that you check it you do:
    if (aRecording.Title.Equals("manual")) so if the recording.title is manual you always return TRUE.. and is not true because I have many Manual recording for last week on the same channel that I'm actualy recording.. so I get Rec dots on all thouse old recordings

    Second problem is that if is not manual

    You just check " if (aRecording.StartTime <= prg.EndTime)" so any old recording with the same data that the actual recording is also mark as "rec" so is wrong also..

    Three problem

    private void OnDeleteRecording(int iItem)

    Line FileInfo fInfo = new FileInfo(g_Player.currentFileName);
    if I select a show to delete, sometime ----------------- g_player.currentFileName is "" so there is a exception
    ==================================
    at System.IO.FileInfo..ctor(String fileName)
    at TvPlugin.TvRecorded.OnDeleteRecording(Int32 iItem)
    at TvPlugin.TvRecorded.OnShowContextMenu()
    at MediaPortal.GUI.Library.GUIWindow.OnAction(Action action)
    at TvPlugin.TvRecorded.OnAction(Action action)
    at MediaPortal.GUI.Library.GUIWindowManager.OnAction(Action action)
    at MediaPortalApp.OnAction(Action action)
    2008-06-19 23:52:54.557200 [ERROR][MPMain]: Exception :The path is not of a legal form.
    2008-06-19 23:52:54.567200 [ERROR][MPMain]: site :confused:ystem.String NormalizePathFast(System.String, Boolean)
    2008-06-19 23:52:54.577200 [ERROR][MPMain]: source :mscorlib
    2008-06-19 23:52:54.586200 [ERROR][MPMain]: stacktrace: at System.IO.Path.NormalizePathFast(String path, Boolean fullCheck)
    at System.IO.Path.NormalizePath(String path, Boolean fullCheck)


    ============================



    and the show is not deleted, you must check that g_player.currentFileName !=""


    I think you should do the same methot as the GUIDE does to paint the "Rec dot"... Is works most of the times..


    Iosu
     

    iosub

    Portal Pro
    April 26, 2006
    573
    30
    San Sebastian
    OK,

    I have update to last SVN

    Endtime is now ok, but there is still a problem...
    Steps to reproduce:
    1.- Place a schedule recording "Record Everytime on this channel"
    2.- ones the recording is started..
    3.- go to active records and Stop the recording
    4.- After some seconds the recording is started again... can not stop the recording, I have try 3 time..
    5.- I got 3 "red dot"

    sql data
    349 22 20/06/2008 19:10:22 20/06/2008 19:11:22 Está pasando
    350 22 20/06/2008 19:12:20 20/06/2008 19:17:03 Está pasando
    351 22 20/06/2008 19:17:21 20/06/2008 19:19:35 Está pasando
    352 22 20/06/2008 19:19:54 20/06/2008 19:19:54 Está pasando
     

    SciDoctor

    Retired Team Member
  • Premium Supporter
  • February 2, 2005
    1,465
    139
    England
    This looks like the age old problem with everytime recordings where the parent 'everytime' schedule spawns a child 'single' schedule.

    So when the schedule ends or is manualy ended early both the child and parent schedule needs to be deleted/ended.

    If the child schedule is only deleted early the parent is still there to keep respawning new child 'single' schedules.
     

    Paranoid Delusion

    Moderation Manager
  • Premium Supporter
  • June 13, 2005
    13,062
    2,978
    Cheshire
    Home Country
    United Kingdom United Kingdom
    If the child schedule is only deleted early the parent is still there to keep respawning new child 'single' schedules.

    And the only way to stop, is delete the whole schedule itself, am i right !!
     

    SciDoctor

    Retired Team Member
  • Premium Supporter
  • February 2, 2005
    1,465
    139
    England
    Cancel the parent. (no respawning possible)

    Delete the child.

    Both exist for the current schedule

    The future 'everytime' schedules aren't affected.
     

    gibman

    Retired Team Member
  • Premium Supporter
  • October 4, 2006
    2,998
    1,372
    Aarhus
    Home Country
    Denmark Denmark
    Hi!

    I think I have nailed it.
    (SVN updated)

    When canceling running (recording) schedules they wont re-start no more :)

    I implemented a public method in tvhome, which is now used from the various places in tvplugin where stopping a recording is handled.

    the new method is called; public static void DeleteRecordingSchedule(Schedule s)

    Plz test;

    Start a rec. of every type that is available.
    Start it from tvhome, Rec. button etc.
    Every way possible u can think of-

    For each new recording u create -test the following different ways of stopping it (I might even have forgotten some).

    stop button in tvhome.
    stop from "my rec. tv"
    stop from tv guide.
    stop from "active recordings" list

    Just make sure that the rec. u cancel isn't restarted again :)

    So in other words ...
    Start a recording of any choice and type.
    Stop the recording in any way possible you see fit.
    Test if rec. really stops..and stay stopped :)

    /gibman
     

    Users who are viewing this thread

    Top Bottom