- FIX: Samsung CablePrime channel list was not saved

- FIX: deleted Samsung analog, DVB-C and DVB-T channels re-appeared after reloading the file
- FIX: exception when overwriting an existing file
This commit is contained in:
hbeham
2013-07-19 19:05:07 +02:00
parent f99c865b51
commit f83e53f9cd
6 changed files with 27 additions and 11 deletions

View File

@@ -188,8 +188,8 @@
offVideoPid = 2
offPcrPid = 4
offServiceId = 6
maskDeleted = 0x01
offDeleted = 8
maskDeleted = 0x01
offQam = 12
offBandwidth = 14
offServiceType = 15

View File

@@ -58,6 +58,8 @@ namespace ChanSort.Loader.Samsung
this.Lock = data.GetFlag(_Lock);
this.Encrypted = data.GetFlag(_Encrypted);
this.IsDeleted = data.GetFlag(_Deleted);
if (this.IsDeleted)
this.OldProgramNr = -1;
}
#endregion
@@ -111,6 +113,7 @@ namespace ChanSort.Loader.Samsung
mapping.SetFlag(_InUse, this.InUse);
if (this.NewProgramNr >= 0)
mapping.SetWord(_ProgramNr, this.NewProgramNr);
if (this.IsNameModified)
{
int bytes = mapping.SetString(_Name, this.Name, mapping.Settings.GetInt("lenName"));
@@ -119,8 +122,7 @@ namespace ChanSort.Loader.Samsung
}
this.UpdateRawFavorites();
mapping.SetFlag(_Lock, this.Lock);
if (this.NewProgramNr == -1)
mapping.SetFlag(_Deleted, true);
mapping.SetFlag(_Deleted, this.NewProgramNr < 0);
this.UpdateChecksum();
}

View File

@@ -526,7 +526,7 @@ namespace ChanSort.Loader.Samsung
{
if (tvOutputFile != this.FileName)
{
File.Copy(this.FileName, tvOutputFile);
File.Copy(this.FileName, tvOutputFile, true);
this.FileName = tvOutputFile;
}
using (ZipFile zip = new ZipFile(tvOutputFile))
@@ -538,6 +538,7 @@ namespace ChanSort.Loader.Samsung
this.SaveChannels(zip, "map-CableD", this.dvbcChannels, ref this.dvbcFileContent);
this.SaveChannels(zip, "map-SateD", this.dvbsChannels, ref this.dvbsFileContent);
this.SaveChannels(zip, "map-AstraHDPlusD", this.hdplusChannels, ref this.hdplusFileContent);
this.SaveChannels(zip, "map-CablePrime_D", this.primeChannels, ref this.primeFileContent);
zip.CommitUpdate();
}
}

View File

@@ -25,7 +25,7 @@ namespace ChanSort.Ui
{
public partial class MainForm : XtraForm
{
public const string AppVersion = "v2013-07-19";
public const string AppVersion = "v2013-07-19.2";
private const int MaxMruEntries = 5;

View File

@@ -87,10 +87,13 @@ struct SCM_mapDigital_DEF_entry
word VideoPid;
word PcrPid;
word ServiceId;
byte Unknown8[4];
byte Skip_Deleted;
byte InUse;
byte SignalSource;
byte SignalType;
byte Qam;
byte Unknown13;
byte Bandwidth;
byte BandwidthIs8MHz;
byte ServiceType;
byte Codec;
byte Unknown16[3];
@@ -114,18 +117,20 @@ struct SCM_mapDigital_DEF_entry
uc16be Name[100];
uc16be ShortName[9];
byte VideoFormat;
byte Unknown283[9];
byte Unknown283[7];
byte FavFlags;
byte Checksum1;
dword Fav1;
dword Fav2;
dword Fav3;
dword Fav4;
dword Fav5;
byte Unknown312[7];
byte Checksum;
byte Checksum2;
};
public struct SCM_mapDigital_DEF
{
SCM_mapDigital_DE_entry Entries[*];
SCM_mapDigital_DEF_entry Entries[*];
};

View File

@@ -1,6 +1,9 @@
Version v2013-07-19 ======================================================
Version v2013-07-19.2 ====================================================
Changes:
- FIX: Samsung "CablePrime" channel list was not updated/saved
- FIX: Deleted Samsung analog, DVB-T and DVB-C channels re-appeared in the
channel list after loading the file again.
- Supports Panasonic "svl.bin" channel lists for different TV CPUs
(auto-detecting big-endian or little-endian byte order).
- *.csv reference list is no longer created automatically. (You can always
@@ -110,6 +113,11 @@ OTHER DEALINGS IN THE SOFTWARE.
Change log ================================================================
2013-07-19.2
- FIX: Samsung "CablePrime" channel list was not updated/saved
- FIX: Deleted Samsung analog, DVB-T and DVB-C channels re-appeared in the
channel list after loading the file again.
2013-07-19
- Supports Panasonic "svl.bin" channel lists for different TV CPUs
(auto-detecting big-endian or little-endian byte order).