diff options
author | Casimir666 <casimir666@users.sourceforge.net> | 2008-10-09 16:38:02 +0400 |
---|---|---|
committer | Casimir666 <casimir666@users.sourceforge.net> | 2008-10-09 16:38:02 +0400 |
commit | 70d72e66e72a23d544fd0ba99e3db8c7c7a3b31f (patch) | |
tree | 71dc60458c2762c44d44f7fc96ed552c93128f4a /src | |
parent | bcbe18d32d188d34093608e6aed5ab3309c2f86e (diff) |
Fix : UOP removed from first PGC
Fix : DVD remember position with /dvdpos option
Fix : Don't play pictures with "Open folder" action
git-svn-id: https://mpc-hc.svn.sourceforge.net/svnroot/mpc-hc/trunk@831 10f7b99b-c216-0410-bff0-8a66a9350fd8
Diffstat (limited to 'src')
-rw-r--r-- | src/apps/mplayerc/Ifo.cpp | 14 | ||||
-rw-r--r-- | src/apps/mplayerc/Ifo.h | 1 | ||||
-rw-r--r-- | src/apps/mplayerc/MainFrm.cpp | 2 | ||||
-rw-r--r-- | src/apps/mplayerc/PlayerPlaylistBar.cpp | 3 |
4 files changed, 17 insertions, 3 deletions
diff --git a/src/apps/mplayerc/Ifo.cpp b/src/apps/mplayerc/Ifo.cpp index be4e909f6..39bb6c763 100644 --- a/src/apps/mplayerc/Ifo.cpp +++ b/src/apps/mplayerc/Ifo.cpp @@ -138,6 +138,14 @@ void CIfo::RemovePgciUOPs (uint8_t *ptr) }
}
+CIfo::pgc_t* CIfo::GetFirstPGC()
+{
+ if (m_pBuffer)
+ return (pgc_t*) (m_pBuffer + 0x0400);
+ else
+ return NULL;
+}
+
CIfo::pgc_t* CIfo::GetPGCI(const int title)
{
CIfo::pgci_sub_t *pgci_sub;
@@ -208,10 +216,12 @@ bool CIfo::RemoveUOPs() {
if (m_pPGCI)
{
+ pgc_t* pgc = GetFirstPGC();
+
+ if (pgc) pgc->prohibited_ops = 0;
+
for (int i=0; i<be2me_16(m_pPGCI->num); i++)
{
- pgc_t* pgc;
-
if (pgc = GetPGCI(i))
RemovePgciUOPs ((uint8_t*)pgc);
}
diff --git a/src/apps/mplayerc/Ifo.h b/src/apps/mplayerc/Ifo.h index 88cf909a3..3cc3b4389 100644 --- a/src/apps/mplayerc/Ifo.h +++ b/src/apps/mplayerc/Ifo.h @@ -195,6 +195,7 @@ private : bool IsVTS();
bool IsVMG();
+ pgc_t* GetFirstPGC();
pgc_t* GetPGCI(const int title);
int GetMiscPGCI (ifo_hdr_t *hdr, int title, uint8_t **ptr);
void RemovePgciUOPs (uint8_t *ptr);
diff --git a/src/apps/mplayerc/MainFrm.cpp b/src/apps/mplayerc/MainFrm.cpp index 7a4e9c2a1..86a8500d7 100644 --- a/src/apps/mplayerc/MainFrm.cpp +++ b/src/apps/mplayerc/MainFrm.cpp @@ -1961,6 +1961,7 @@ LRESULT CMainFrame::OnGraphNotify(WPARAM wParam, LPARAM lParam) {
if (s.lDVDTitle != 0)
{
+ s.NewDvd (llDVDGuid);
// Set command line position
pDVDC->PlayTitle(s.lDVDTitle, DVD_CMD_FLAG_Block|DVD_CMD_FLAG_Flush, NULL);
if (s.lDVDChapter != 0)
@@ -1968,6 +1969,7 @@ LRESULT CMainFrame::OnGraphNotify(WPARAM wParam, LPARAM lParam) else
pDVDC->PlayAtTimeInTitle (s.lDVDTitle, &s.DVDPosition, DVD_CMD_FLAG_Block|DVD_CMD_FLAG_Flush, NULL);
+ m_iDVDTitle = s.lDVDTitle;
s.lDVDTitle = 0;
s.lDVDChapter = 0;
}
diff --git a/src/apps/mplayerc/PlayerPlaylistBar.cpp b/src/apps/mplayerc/PlayerPlaylistBar.cpp index 9a222d04d..98fc2f3ea 100644 --- a/src/apps/mplayerc/PlayerPlaylistBar.cpp +++ b/src/apps/mplayerc/PlayerPlaylistBar.cpp @@ -234,7 +234,8 @@ static bool SearchFiles(CString mask, CAtlList<CString>& sl) for(int i = 0; i < mf.GetCount(); i++)
{
CMediaFormatCategory& mfc = mf.GetAt(i);
- if((mfc.FindExt(ext))/* && (CPPageFormats::IsRegistered(ext, mfc.GetProgId()))*/)
+ if((mfc.FindExt(ext)) &&
+ (mfc.GetProgId() != _T("mplayerc.jpeg"))) // Prevent playing pictures on "play folder"
{
sl.AddTail(path);
break;
|