Commit 4aaa00c6 authored by Sam Hocevar's avatar Sam Hocevar

  * Fix in libdvdcss in the key caching code.
  * Removed useless variables in configure.in which caused all subsequent
    compilation tests to fail.
parent 5594c61a
...@@ -6,8 +6,11 @@ HEAD ...@@ -6,8 +6,11 @@ HEAD
* Nothing yet. * Nothing yet.
0.2.81 0.2.81
Fri, 27 Jul 2001 03:30:44 +0200 Sat, 28 Jul 2001 04:13:57 +0200
* Fix in libdvdcss in the key caching code.
* Removed useless variables in configure.in which caused all subsequent
compilation tests to fail.
* Additional fixes to the sdl-config detection. * Additional fixes to the sdl-config detection.
* Added a make uninstall rule. * Added a make uninstall rule.
* Changed libdvdcss API to force binary incompatibility. Yeah, this is * Changed libdvdcss API to force binary incompatibility. Yeah, this is
......
...@@ -4077,22 +4077,10 @@ fi ...@@ -4077,22 +4077,10 @@ fi
if test "x$withval" != "xno" if test "x$withval" != "xno"
then then
cat >> confdefs.h <<\EOF
#define HAVE_SDL_SDL_H 0
EOF
cat >> confdefs.h <<\EOF
#define HAVE_SDL11_SDL_H 0
EOF
cat >> confdefs.h <<\EOF
#define HAVE_SDL12_SDL_H 0
EOF
# Extract the first word of "sdl-config", so it can be a program name with args. # Extract the first word of "sdl-config", so it can be a program name with args.
set dummy sdl-config; ac_word=$2 set dummy sdl-config; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
echo "configure:4096: checking for $ac_word" >&5 echo "configure:4084: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_path_SDL_CONFIG'+set}'`\" = set"; then if eval "test \"`echo '$''{'ac_cv_path_SDL_CONFIG'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6 echo $ac_n "(cached) $ac_c" 1>&6
else else
...@@ -4130,7 +4118,7 @@ fi ...@@ -4130,7 +4118,7 @@ fi
# Extract the first word of "sdl11-config", so it can be a program name with args. # Extract the first word of "sdl11-config", so it can be a program name with args.
set dummy sdl11-config; ac_word=$2 set dummy sdl11-config; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
echo "configure:4134: checking for $ac_word" >&5 echo "configure:4122: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_path_SDL11_CONFIG'+set}'`\" = set"; then if eval "test \"`echo '$''{'ac_cv_path_SDL11_CONFIG'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6 echo $ac_n "(cached) $ac_c" 1>&6
else else
...@@ -4170,7 +4158,7 @@ fi ...@@ -4170,7 +4158,7 @@ fi
# Extract the first word of "sdl12-config", so it can be a program name with args. # Extract the first word of "sdl12-config", so it can be a program name with args.
set dummy sdl12-config; ac_word=$2 set dummy sdl12-config; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
echo "configure:4174: checking for $ac_word" >&5 echo "configure:4162: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_path_SDL12_CONFIG'+set}'`\" = set"; then if eval "test \"`echo '$''{'ac_cv_path_SDL12_CONFIG'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6 echo $ac_n "(cached) $ac_c" 1>&6
else else
...@@ -4211,17 +4199,17 @@ fi ...@@ -4211,17 +4199,17 @@ fi
do do
ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
echo "configure:4215: checking for $ac_hdr" >&5 echo "configure:4203: checking for $ac_hdr" >&5
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6 echo $ac_n "(cached) $ac_c" 1>&6
else else
cat > conftest.$ac_ext <<EOF cat > conftest.$ac_ext <<EOF
#line 4220 "configure" #line 4208 "configure"
#include "confdefs.h" #include "confdefs.h"
#include <$ac_hdr> #include <$ac_hdr>
EOF EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
{ (eval echo configure:4225: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } { (eval echo configure:4213: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then if test -z "$ac_err"; then
rm -rf conftest* rm -rf conftest*
...@@ -4281,17 +4269,17 @@ if test "${with_directx+set}" = set; then ...@@ -4281,17 +4269,17 @@ if test "${with_directx+set}" = set; then
do do
ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
echo "configure:4285: checking for $ac_hdr" >&5 echo "configure:4273: checking for $ac_hdr" >&5
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6 echo $ac_n "(cached) $ac_c" 1>&6
else else
cat > conftest.$ac_ext <<EOF cat > conftest.$ac_ext <<EOF
#line 4290 "configure" #line 4278 "configure"
#include "confdefs.h" #include "confdefs.h"
#include <$ac_hdr> #include <$ac_hdr>
EOF EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
{ (eval echo configure:4295: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } { (eval echo configure:4283: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then if test -z "$ac_err"; then
rm -rf conftest* rm -rf conftest*
...@@ -4329,17 +4317,17 @@ fi ...@@ -4329,17 +4317,17 @@ fi
do do
ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
echo "configure:4333: checking for $ac_hdr" >&5 echo "configure:4321: checking for $ac_hdr" >&5
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6 echo $ac_n "(cached) $ac_c" 1>&6
else else
cat > conftest.$ac_ext <<EOF cat > conftest.$ac_ext <<EOF
#line 4338 "configure" #line 4326 "configure"
#include "confdefs.h" #include "confdefs.h"
#include <$ac_hdr> #include <$ac_hdr>
EOF EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
{ (eval echo configure:4343: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } { (eval echo configure:4331: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then if test -z "$ac_err"; then
rm -rf conftest* rm -rf conftest*
...@@ -4443,7 +4431,7 @@ if test x$enable_gtk != xno; then ...@@ -4443,7 +4431,7 @@ if test x$enable_gtk != xno; then
# Extract the first word of "gtk-config", so it can be a program name with args. # Extract the first word of "gtk-config", so it can be a program name with args.
set dummy gtk-config; ac_word=$2 set dummy gtk-config; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
echo "configure:4447: checking for $ac_word" >&5 echo "configure:4435: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_path_GTK_CONFIG'+set}'`\" = set"; then if eval "test \"`echo '$''{'ac_cv_path_GTK_CONFIG'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6 echo $ac_n "(cached) $ac_c" 1>&6
else else
...@@ -4503,17 +4491,17 @@ if test x$enable_x11 != xno; then ...@@ -4503,17 +4491,17 @@ if test x$enable_x11 != xno; then
do do
ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
echo "configure:4507: checking for $ac_hdr" >&5 echo "configure:4495: checking for $ac_hdr" >&5
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6 echo $ac_n "(cached) $ac_c" 1>&6
else else
cat > conftest.$ac_ext <<EOF cat > conftest.$ac_ext <<EOF
#line 4512 "configure" #line 4500 "configure"
#include "confdefs.h" #include "confdefs.h"
#include <$ac_hdr> #include <$ac_hdr>
EOF EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
{ (eval echo configure:4517: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } { (eval echo configure:4505: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then if test -z "$ac_err"; then
rm -rf conftest* rm -rf conftest*
...@@ -4565,17 +4553,17 @@ if test x$enable_xvideo != xno; then ...@@ -4565,17 +4553,17 @@ if test x$enable_xvideo != xno; then
do do
ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
echo "configure:4569: checking for $ac_hdr" >&5 echo "configure:4557: checking for $ac_hdr" >&5
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6 echo $ac_n "(cached) $ac_c" 1>&6
else else
cat > conftest.$ac_ext <<EOF cat > conftest.$ac_ext <<EOF
#line 4574 "configure" #line 4562 "configure"
#include "confdefs.h" #include "confdefs.h"
#include <$ac_hdr> #include <$ac_hdr>
EOF EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
{ (eval echo configure:4579: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } { (eval echo configure:4567: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then if test -z "$ac_err"; then
rm -rf conftest* rm -rf conftest*
...@@ -4615,17 +4603,17 @@ if test "${enable_alsa+set}" = set; then ...@@ -4615,17 +4603,17 @@ if test "${enable_alsa+set}" = set; then
then then
ac_safe=`echo "sys/asoundlib.h" | sed 'y%./+-%__p_%'` ac_safe=`echo "sys/asoundlib.h" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for sys/asoundlib.h""... $ac_c" 1>&6 echo $ac_n "checking for sys/asoundlib.h""... $ac_c" 1>&6
echo "configure:4619: checking for sys/asoundlib.h" >&5 echo "configure:4607: checking for sys/asoundlib.h" >&5
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6 echo $ac_n "(cached) $ac_c" 1>&6
else else
cat > conftest.$ac_ext <<EOF cat > conftest.$ac_ext <<EOF
#line 4624 "configure" #line 4612 "configure"
#include "confdefs.h" #include "confdefs.h"
#include <sys/asoundlib.h> #include <sys/asoundlib.h>
EOF EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
{ (eval echo configure:4629: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } { (eval echo configure:4617: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then if test -z "$ac_err"; then
rm -rf conftest* rm -rf conftest*
...@@ -4642,7 +4630,7 @@ fi ...@@ -4642,7 +4630,7 @@ fi
if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
echo "$ac_t""yes" 1>&6 echo "$ac_t""yes" 1>&6
echo $ac_n "checking for main in -lasound""... $ac_c" 1>&6 echo $ac_n "checking for main in -lasound""... $ac_c" 1>&6
echo "configure:4646: checking for main in -lasound" >&5 echo "configure:4634: checking for main in -lasound" >&5
ac_lib_var=`echo asound'_'main | sed 'y%./+-%__p_%'` ac_lib_var=`echo asound'_'main | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6 echo $ac_n "(cached) $ac_c" 1>&6
...@@ -4650,14 +4638,14 @@ else ...@@ -4650,14 +4638,14 @@ else
ac_save_LIBS="$LIBS" ac_save_LIBS="$LIBS"
LIBS="-lasound $LIBS" LIBS="-lasound $LIBS"
cat > conftest.$ac_ext <<EOF cat > conftest.$ac_ext <<EOF
#line 4654 "configure" #line 4642 "configure"
#include "confdefs.h" #include "confdefs.h"
int main() { int main() {
main() main()
; return 0; } ; return 0; }
EOF EOF
if { (eval echo configure:4661: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then if { (eval echo configure:4649: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest* rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes" eval "ac_cv_lib_$ac_lib_var=yes"
else else
......
...@@ -530,9 +530,6 @@ AC_ARG_ENABLE(sdl, ...@@ -530,9 +530,6 @@ AC_ARG_ENABLE(sdl,
[ --disable-sdl SDL support (default enabled)]) [ --disable-sdl SDL support (default enabled)])
if test "x$withval" != "xno" if test "x$withval" != "xno"
then then
AC_DEFINE(HAVE_SDL_SDL_H, 0, Define if you have SDL/SDL.h)
AC_DEFINE(HAVE_SDL11_SDL_H, 0, Define if you have SDL/SDL11.h)
AC_DEFINE(HAVE_SDL12_SDL_H, 0, Define if you have SDL/SDL12.h)
AC_PATH_PROG(SDL_CONFIG, sdl-config, no) AC_PATH_PROG(SDL_CONFIG, sdl-config, no)
SDL_HEADER="SDL/SDL.h" SDL_HEADER="SDL/SDL.h"
if test x${SDL_CONFIG} = xno; then if test x${SDL_CONFIG} = xno; then
......
...@@ -2,7 +2,7 @@ vlc (0.2.81-1) unstable; urgency=low ...@@ -2,7 +2,7 @@ vlc (0.2.81-1) unstable; urgency=low
* New upstream release. * New upstream release.
-- Samuel Hocevar <sam@zoy.org> Fri, 27 Jul 2001 03:30:44 +0200 -- Samuel Hocevar <sam@zoy.org> Sat, 28 Jul 2001 04:13:57 +0200
vlc (0.2.80-1) unstable; urgency=low vlc (0.2.80-1) unstable; urgency=low
......
...@@ -2,7 +2,7 @@ vlc-css (0.2.81-1) unstable; urgency=low ...@@ -2,7 +2,7 @@ vlc-css (0.2.81-1) unstable; urgency=low
* New upstream release. * New upstream release.
-- Samuel Hocevar <sam@zoy.org> Fri, 27 Jul 2001 03:30:44 +0200 -- Samuel Hocevar <sam@zoy.org> Sat, 28 Jul 2001 04:13:57 +0200
vlc-css (0.2.80-1) unstable; urgency=low vlc-css (0.2.80-1) unstable; urgency=low
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* libdvdcss.c: DVD reading library. * libdvdcss.c: DVD reading library.
***************************************************************************** *****************************************************************************
* Copyright (C) 1998-2001 VideoLAN * Copyright (C) 1998-2001 VideoLAN
* $Id: libdvdcss.c,v 1.10 2001/07/27 01:05:17 sam Exp $ * $Id: libdvdcss.c,v 1.11 2001/07/28 02:17:37 sam Exp $
* *
* Authors: Stphane Borel <stef@via.ecp.fr> * Authors: Stphane Borel <stef@via.ecp.fr>
* Samuel Hocevar <sam@zoy.org> * Samuel Hocevar <sam@zoy.org>
...@@ -163,6 +163,8 @@ extern int dvdcss_title ( dvdcss_handle dvdcss, int i_block ) ...@@ -163,6 +163,8 @@ extern int dvdcss_title ( dvdcss_handle dvdcss, int i_block )
return 0; return 0;
} }
//fprintf( stderr, "looking for a key for offset %i\n", i_block );
/* Check if we've already cracked this key */ /* Check if we've already cracked this key */
p_title = dvdcss->p_titles; p_title = dvdcss->p_titles;
while( p_title != NULL while( p_title != NULL
...@@ -193,6 +195,9 @@ extern int dvdcss_title ( dvdcss_handle dvdcss, int i_block ) ...@@ -193,6 +195,9 @@ extern int dvdcss_title ( dvdcss_handle dvdcss, int i_block )
return -1; return -1;
} }
//fprintf( stderr, "cracked key is %.2x %.2x %.2x %.2x %.2x\n",
// p_key[0], p_key[1], p_key[2], p_key[3], p_key[4] );
/* Add key to keytable if it isn't empty */ /* Add key to keytable if it isn't empty */
if( p_key[0] | p_key[1] | p_key[2] | p_key[3] | p_key[4] ) if( p_key[0] | p_key[1] | p_key[2] | p_key[3] | p_key[4] )
{ {
...@@ -255,7 +260,7 @@ extern int dvdcss_read ( dvdcss_handle dvdcss, void *p_buffer, ...@@ -255,7 +260,7 @@ extern int dvdcss_read ( dvdcss_handle dvdcss, void *p_buffer,
p_title = dvdcss->p_titles; p_title = dvdcss->p_titles;
while( p_title != NULL while( p_title != NULL
&& p_title->p_next && p_title->p_next
&& p_title->p_next->i_startlb < dvdcss->i_seekpos ) && p_title->p_next->i_startlb <= dvdcss->i_seekpos )
{ {
p_title = p_title->p_next; p_title = p_title->p_next;
} }
...@@ -303,7 +308,7 @@ extern int dvdcss_readv ( dvdcss_handle dvdcss, void *p_iovec, ...@@ -303,7 +308,7 @@ extern int dvdcss_readv ( dvdcss_handle dvdcss, void *p_iovec,
p_title = dvdcss->p_titles; p_title = dvdcss->p_titles;
while( p_title != NULL while( p_title != NULL
&& p_title->p_next != NULL && p_title->p_next != NULL
&& p_title->p_next->i_startlb < dvdcss->i_seekpos ) && p_title->p_next->i_startlb <= dvdcss->i_seekpos )
{ {
p_title = p_title->p_next; p_title = p_title->p_next;
} }
......
...@@ -13,7 +13,7 @@ Summary: VideoLAN Client. ...@@ -13,7 +13,7 @@ Summary: VideoLAN Client.
Summary(fr): Client VideoLAN. Summary(fr): Client VideoLAN.
%changelog %changelog
* Fri, Jul 27 2001 Samuel Hocevar <sam@zoy.org> * Sat, Jul 28 2001 Samuel Hocevar <sam@zoy.org>
New upstream release (0.2.81) New upstream release (0.2.81)
* Tue Jun 5 2001 Samuel Hocevar <sam@zoy.org> * Tue Jun 5 2001 Samuel Hocevar <sam@zoy.org>
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment