Fixed crashing playlist bug

CQTexperiment
vspader 2005-06-20 18:09:19 +00:00
parent 4adcc751a6
commit deb5d66f6d
10 changed files with 575 additions and 510 deletions

View File

@ -254,21 +254,19 @@
<key>PBXSmartGroupTreeModuleOutlineStateExpansionKey</key>
<array>
<string>29B97314FDCFA39411CA2CEA</string>
<string>080E96DDFE201D6D7F000001</string>
<string>8EF6FA64082DA525006F7BE6</string>
<string>29B97317FDCFA39411CA2CEA</string>
<string>1C37FABC05509CD000000102</string>
</array>
<key>PBXSmartGroupTreeModuleOutlineStateSelectionKey</key>
<array>
<array>
<integer>36</integer>
<integer>1</integer>
<integer>7</integer>
<integer>3</integer>
<integer>0</integer>
</array>
</array>
<key>PBXSmartGroupTreeModuleOutlineStateVisibleRectKey</key>
<string>{{0, 438}, {186, 565}}</string>
<string>{{0, 0}, {186, 565}}</string>
</dict>
<key>PBXTopSmartGroupGIDs</key>
<array/>
@ -305,7 +303,7 @@
<key>PBXProjectModuleGUID</key>
<string>1CE0B20306471E060097A5F4</string>
<key>PBXProjectModuleLabel</key>
<string>Sound.m</string>
<string>Info.plist</string>
<key>PBXSplitModuleInNavigatorKey</key>
<dict>
<key>Split0</key>
@ -313,11 +311,11 @@
<key>PBXProjectModuleGUID</key>
<string>1CE0B20406471E060097A5F4</string>
<key>PBXProjectModuleLabel</key>
<string>Sound.m</string>
<string>Info.plist</string>
<key>_historyCapacity</key>
<integer>0</integer>
<key>bookmark</key>
<string>8E6535B60856432F00E468D9</string>
<string>8EE558090866A24B009E7F50</string>
<key>history</key>
<array>
<string>8EF6FACD082DAA2B006F7BE6</string>
@ -335,13 +333,8 @@
<string>8ED833CD08457E6B0033CDBD</string>
<string>8E94D9D2084BEA32007F0AEB</string>
<string>8E94D9D3084BEA32007F0AEB</string>
<string>8E14E4A5084D089100246BCC</string>
<string>8EC156F5084FEB8900BB24E8</string>
<string>8E2752B70850A92E001618CD</string>
<string>8EE2A5B808511A1800367489</string>
<string>8E72BC640851408F00E34F1D</string>
<string>8EFC6D18085376D100C67D06</string>
<string>8EFC6DE7085380B800C67D06</string>
<string>8EFC6DE8085380B800C67D06</string>
<string>8EFC6DF0085380B800C67D06</string>
<string>8EFC6E29085386CE00C67D06</string>
@ -360,11 +353,7 @@
<string>8EB30E1F0854C36A009EA87F</string>
<string>8E4D66E90854CD2C00816BEE</string>
<string>8E4D66EA0854CD2C00816BEE</string>
<string>8E4D67210854D2E700816BEE</string>
<string>8E4D67D40854E7B100816BEE</string>
<string>8E8F3F20085543D700BCF803</string>
<string>8E8F3F21085543D700BCF803</string>
<string>8E8F3F22085543D700BCF803</string>
<string>8E8F3F59085546B300BCF803</string>
<string>8E8F3F780855483300BCF803</string>
<string>8E8F3FA408554B8000BCF803</string>
@ -372,7 +361,6 @@
<string>8E287CDC0855D60A00562C66</string>
<string>8E287CDD0855D60A00562C66</string>
<string>8E287E7F0855F60E00562C66</string>
<string>8E287E830855F60E00562C66</string>
<string>8EAB7544085621B10021C2BF</string>
<string>8EAB7545085621B10021C2BF</string>
<string>8EAB7549085621B10021C2BF</string>
@ -383,15 +371,29 @@
<string>8EABE7C308562FF3004DF882</string>
<string>8EABE7C408562FF3004DF882</string>
<string>8EABE7C508562FF3004DF882</string>
<string>8EABE7C608562FF3004DF882</string>
<string>8E5CC5020856316C00A299E0</string>
<string>8E98E5D308563D1B0078CAA1</string>
<string>8E65357F08563F6A00E468D9</string>
<string>8E65358008563F6A00E468D9</string>
<string>8E65358108563F6A00E468D9</string>
<string>8E65359D0856401D00E468D9</string>
<string>8E65359E0856401D00E468D9</string>
<string>8E65357E08563F6A00E468D9</string>
<string>8E5F6DB1085781B900A111D9</string>
<string>8E5F6DB2085781B900A111D9</string>
<string>8E63F6C808587FD400C79B72</string>
<string>8E63F6C908587FD400C79B72</string>
<string>8E63F6CA08587FD400C79B72</string>
<string>8E8C7BFB085E9CD50086DAC7</string>
<string>8E8C7C14085E9DA50086DAC7</string>
<string>8E8C7C7F085EA5E30086DAC7</string>
<string>8E8C7C81085EA5E30086DAC7</string>
<string>8E8C7C83085EA5E30086DAC7</string>
<string>8E8C7C85085EA5E30086DAC7</string>
<string>8E8C7D35085EAD460086DAC7</string>
<string>8E8C7D36085EAD460086DAC7</string>
<string>8E657299086085E400A0DAC4</string>
<string>8E65729A086085E400A0DAC4</string>
<string>8E94AFB2086639760038E585</string>
<string>8EE558070866A24B009E7F50</string>
<string>8E657298086085E400A0DAC4</string>
</array>
<key>prevStack</key>
<array>
@ -448,10 +450,8 @@
<string>8E0EBF59084BAA56003A6E64</string>
<string>8E10DC08084BBE490013815C</string>
<string>8E5A90BB084CC25900AE6D62</string>
<string>8E14E4B3084D089100246BCC</string>
<string>8E14E4B4084D089100246BCC</string>
<string>8E14E4B5084D089100246BCC</string>
<string>8EC18EBD084E57D500AE0BA9</string>
<string>8EC156F9084FEB8900BB24E8</string>
<string>8E8BAEB208548C9600E9F14D</string>
<string>8E8BAEB308548C9600E9F14D</string>
@ -467,13 +467,13 @@
<string>8EAB755D085621B10021C2BF</string>
<string>8EABE78808562281004DF882</string>
<string>8EABE7CA08562FF3004DF882</string>
<string>8E65358208563F6A00E468D9</string>
<string>8E65358308563F6A00E468D9</string>
<string>8E65358408563F6A00E468D9</string>
<string>8E65358508563F6A00E468D9</string>
<string>8E65358608563F6A00E468D9</string>
<string>8E65359F0856401D00E468D9</string>
<string>8E6535A00856401D00E468D9</string>
<string>8E63F6CB08587FD400C79B72</string>
<string>8E8C7C8C085EA5E30086DAC7</string>
<string>8E8C7C8E085EA5E30086DAC7</string>
<string>8E8C7C90085EA5E30086DAC7</string>
<string>8E8C7C92085EA5E30086DAC7</string>
<string>8E8C7C98085EA5E30086DAC7</string>
<string>8EE558080866A24B009E7F50</string>
</array>
</dict>
<key>SplitCount</key>
@ -485,14 +485,14 @@
<key>GeometryConfiguration</key>
<dict>
<key>Frame</key>
<string>{{0, 0}, {816, 578}}</string>
<string>{{0, 0}, {816, 405}}</string>
<key>RubberWindowFrame</key>
<string>2 122 1024 624 0 0 1024 746 </string>
</dict>
<key>Module</key>
<string>PBXNavigatorGroup</string>
<key>Proportion</key>
<string>578pt</string>
<string>405pt</string>
</dict>
<dict>
<key>ContentConfiguration</key>
@ -505,14 +505,14 @@
<key>GeometryConfiguration</key>
<dict>
<key>Frame</key>
<string>{{0, 583}, {816, 0}}</string>
<string>{{0, 410}, {816, 173}}</string>
<key>RubberWindowFrame</key>
<string>2 122 1024 624 0 0 1024 746 </string>
</dict>
<key>Module</key>
<string>XCDetailModule</string>
<key>Proportion</key>
<string>0pt</string>
<string>173pt</string>
</dict>
</array>
<key>Proportion</key>
@ -531,9 +531,9 @@
</array>
<key>TableOfContents</key>
<array>
<string>8E65358808563F6A00E468D9</string>
<string>8EE5580A0866A24B009E7F50</string>
<string>1CE0B1FE06471DED0097A5F4</string>
<string>8E65358908563F6A00E468D9</string>
<string>8EE5580B0866A24B009E7F50</string>
<string>1CE0B20306471E060097A5F4</string>
<string>1CE0B20506471E060097A5F4</string>
</array>
@ -667,12 +667,6 @@
<integer>5</integer>
<key>WindowOrderList</key>
<array>
<string>8E65359208563F6A00E468D9</string>
<string>8E65359308563F6A00E468D9</string>
<string>8E7A9371083675B600771E14</string>
<string>1CD10A99069EF8BA00B06720</string>
<string>8E65359008563F6A00E468D9</string>
<string>1C0AD2B3069F1EA900FABCE6</string>
<string>/Users/xugg/Projects/Cog/Cog.xcodeproj</string>
</array>
<key>WindowString</key>
@ -797,8 +791,8 @@
<string>yes</string>
<key>sizes</key>
<array>
<string>{{0, 0}, {163, 194}}</string>
<string>{{163, 0}, {861, 194}}</string>
<string>{{0, 0}, {143, 190}}</string>
<string>{{143, 0}, {881, 190}}</string>
</array>
</dict>
<key>VerticalSplitView</key>
@ -813,8 +807,8 @@
<string>yes</string>
<key>sizes</key>
<array>
<string>{{0, 0}, {1024, 194}}</string>
<string>{{0, 194}, {1024, 390}}</string>
<string>{{0, 0}, {1024, 190}}</string>
<string>{{0, 190}, {1024, 394}}</string>
</array>
</dict>
</dict>
@ -861,14 +855,14 @@
<key>TableOfContents</key>
<array>
<string>1CD10A99069EF8BA00B06720</string>
<string>8E65358A08563F6A00E468D9</string>
<string>8EC12F0608566E3A00FC8AE7</string>
<string>1C162984064C10D400B95A72</string>
<string>8E65358B08563F6A00E468D9</string>
<string>8E65358C08563F6A00E468D9</string>
<string>8E65358D08563F6A00E468D9</string>
<string>8E65358E08563F6A00E468D9</string>
<string>8E65358F08563F6A00E468D9</string>
<string>8E65359008563F6A00E468D9</string>
<string>8EC12F0708566E3A00FC8AE7</string>
<string>8EC12F0808566E3A00FC8AE7</string>
<string>8EC12F0908566E3A00FC8AE7</string>
<string>8EC12F0A08566E3A00FC8AE7</string>
<string>8EC12F0B08566E3A00FC8AE7</string>
<string>8EC12F0C08566E3A00FC8AE7</string>
</array>
<key>ToolbarConfiguration</key>
<string>xcode.toolbar.config.debug</string>
@ -895,12 +889,14 @@
<key>Dock</key>
<array>
<dict>
<key>BecomeActive</key>
<true/>
<key>ContentConfiguration</key>
<dict>
<key>PBXProjectModuleGUID</key>
<string>1CDD528C0622207200134675</string>
<key>PBXProjectModuleLabel</key>
<string>DBLog.c</string>
<string>SoundController.m</string>
<key>StatusBarVisibility</key>
<true/>
</dict>
@ -921,8 +917,6 @@
<string>342pt</string>
</dict>
<dict>
<key>BecomeActive</key>
<true/>
<key>ContentConfiguration</key>
<dict>
<key>PBXProjectModuleGUID</key>
@ -958,8 +952,8 @@
<key>TableOfContents</key>
<array>
<string>1C530D57069F1CE1000CFCEE</string>
<string>8E37C10A0856312D00A0FFA6</string>
<string>8E37C10B0856312D00A0FFA6</string>
<string>8E8C7C27085E9DC50086DAC7</string>
<string>8E8C7C28085E9DC50086DAC7</string>
<string>1CDD528C0622207200134675</string>
<string>1CD0528E0623707200166675</string>
</array>
@ -968,7 +962,7 @@
<key>WindowToolGUID</key>
<string>1C530D57069F1CE1000CFCEE</string>
<key>WindowToolIsVisible</key>
<true/>
<false/>
</dict>
<dict>
<key>Identifier</key>
@ -1022,7 +1016,7 @@
<key>TableOfContents</key>
<array>
<string>8E7A9371083675B600771E14</string>
<string>8E65359108563F6A00E468D9</string>
<string>8EC12F0D08566E3A00FC8AE7</string>
<string>1C78EAAC065D492600B07095</string>
</array>
<key>WindowString</key>
@ -1067,8 +1061,8 @@
<string>yes</string>
<key>sizes</key>
<array>
<string>{{0, 0}, {493, 168}}</string>
<string>{{0, 173}, {493, 270}}</string>
<string>{{0, 0}, {367, 168}}</string>
<string>{{0, 173}, {367, 270}}</string>
</array>
</dict>
<key>VerticalSplitView</key>
@ -1117,9 +1111,9 @@
<key>TableOfContents</key>
<array>
<string>1C0AD2B3069F1EA900FABCE6</string>
<string>8E65356C08563D5600E468D9</string>
<string>8E0914FC08661F200039FDAA</string>
<string>1CD0528B0623707200166675</string>
<string>8E65356D08563D5600E468D9</string>
<string>8E0914FD08661F200039FDAA</string>
</array>
<key>ToolbarConfiguration</key>
<string>xcode.toolbar.config.run</string>

File diff suppressed because it is too large Load Diff

View File

@ -19,9 +19,9 @@
</array>
<key>IBOpenObjects</key>
<array>
<integer>463</integer>
<integer>29</integer>
<integer>21</integer>
<integer>463</integer>
</array>
<key>IBSystem Version</key>
<string>8B15</string>

Binary file not shown.

Binary file not shown.

View File

@ -6,3 +6,5 @@ MPCDec: musepack.net
Ogg Vorbis: xiph.org
SndFile: http://www.mega-nerd.com/libsndfile/
TagLib: http://jakarta.apache.org/taglibs/
Wavpack: http://www.wavpack.com
Shorten: http://fondriest.frederic.free.fr/realisations/lamip/files/src/testing/contrib/

View File

@ -36,7 +36,7 @@
- (int)insertFile:(NSString *)filename atIndex:(int)index
{
if ([acceptableFileTypes containsObject:[filename pathExtension]])
if ([acceptableFileTypes containsObject:[filename pathExtension]] && [[NSFileManager defaultManager] fileExistsAtPath:filename])
{
PlaylistEntry *pe = [[PlaylistEntry alloc] init];

18
README
View File

@ -1,4 +1,4 @@
------------------------------------------------------------------------------------
---------------------------------------------------------------------------
NOTE ABOUT BUTTONS:
If you are under impression that the buttons are acting strange,
they actually may be acting as intended. The back button goes through
@ -8,8 +8,8 @@ had shuffle mode on, and then turned it off, you could go back through the
songs played during shuffle mode. The forward button acts as expected, where
if shuffle is on, it will pick a random song, and if not it goes to the next
song in the playlist.
Please comment on, whether you like this behaviour or not!
------------------------------------------------------------------------------------
Please comment, whether you like this behaviour or not!
---------------------------------------------------------------------------
Cog is released under the GPL. See COPYING for details.
@ -18,14 +18,14 @@ libraries, which i have created Xcode projects for, and possibly modified
to make compile on OS X. The various libraries are under each of their own
licenses.
Please note that vulgar language may be contained in the source code. It is rated
M for mature by the ESRB, the MPAA, and whatever else deems it unsuitable for virgin
ears.
All Cog code is copywrited by me, and is licensed under the GPL.
Please note that vulgar language may be contained in the source code.
It is rated M for mature by the ESRB, the MPAA, and whatever else deems it
unsuitable for virgin ears.
All Cog code is copywrited by me, and is licensed under the GPL.
If you would like the photoshop sources for the various icons and
graphics, please send me an email, and I will be happy to get them to you.
Share and enjoy.
Share and enjoy.
--Vincent Spader (vspader@users.sf.net)

View File

@ -28,7 +28,7 @@
//#define RING_BUFFER_SIZE 1048576
//#define BUFFER_WRITE_CHUNK 32768
#define FEEDER_THREAD_IMPORTANCE 4
#define FEEDER_THREAD_IMPORTANCE 10
//timeout should be smaller than the time itd take for the buffer to run dry...looks like were ironclad
#define TIMEOUT 1

View File

@ -108,6 +108,9 @@
- (void)close
{
if (buffer)
free(buffer);
if (shn_cleanup_decoder(handle))
shn_unload(handle);
}