Mercurial > mplayer.hg
view TOOLS/subsearch.sh @ 32979:4905f5a87357
Replace some awkward and unnecessary usages of strlen().
1. A string length of zero or greater than zero can be determined by checking
the first byte.
2. Leave it to strdup() to determine the length and to do allocation for a
string that is to be copied.
3. If neither the string length nor the index variable is altered in a loop,
string[index] (!= 0) is the condition to go with.
author | ib |
---|---|
date | Thu, 10 Mar 2011 14:20:36 +0000 |
parents | 4d8489f21983 |
children |
line wrap: on
line source
#!/bin/sh # # Collects all the appropriate subtitle files in a given directory and # its subdirectories, no matter what the filename is. # Use this together as: mplayer -sub `subsearch.sh` movie # Author: Alex # [ $1 ] && cd `dirname $1` _sub_names="" one_dir_search() { for i in $dir/* do case "`echo $i | tr [:upper:] [:lower:]`" in *.sub|*.srt|*.mps|*.txt) _sub_names="$i,$_sub_names" ;; *) ;; esac done } dir="." one_dir_search # add subdirectories too for dir in * do [ -d $dir ] && one_dir_search done _len="`echo $_sub_names | wc -c`" _len=$((_len-2)) echo $_sub_names | cut -b -"$_len"