From d781ecff7534a11989d4753fd1d2641469b326d8 Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Mon, 21 Mar 2011 23:30:56 +0000 Subject: fix for grease pencil conversion to bezier curve reading past the end of the array. --- build_files/package_spec/build_archive.py | 59 +++++++++++++-------------- source/blender/editors/gpencil/gpencil_edit.c | 2 +- 2 files changed, 30 insertions(+), 31 deletions(-) diff --git a/build_files/package_spec/build_archive.py b/build_files/package_spec/build_archive.py index 79e42af7b69..3c41cd5911e 100755 --- a/build_files/package_spec/build_archive.py +++ b/build_files/package_spec/build_archive.py @@ -10,8 +10,8 @@ import sys # get parameters if len(sys.argv) < 5: - sys.stderr.write('Excepted arguments: ./build_archive.py name extension install_dir output_dir') - sys.exit(1) + sys.stderr.write('Excepted arguments: ./build_archive.py name extension install_dir output_dir') + sys.exit(1) package_name = sys.argv[1] extension = sys.argv[2] @@ -23,47 +23,46 @@ package_dir = package_name # remove existing package with the same name try: - if os.path.exists(package_archive): - os.remove(package_archive) - if os.path.exists(package_dir): - shutil.rmtree(package_dir) + if os.path.exists(package_archive): + os.remove(package_archive) + if os.path.exists(package_dir): + shutil.rmtree(package_dir) except: - sys.stderr.write('Failed to clean up old package files: ' + sys.exc_info()[0] + '\n') - sys.exit(1) + sys.stderr.write('Failed to clean up old package files: ' + sys.exc_info()[0] + '\n') + sys.exit(1) # create temporary package dir try: - shutil.copytree(install_dir, package_dir) + shutil.copytree(install_dir, package_dir) - for f in os.listdir(package_dir): - if f.startswith('makes'): - os.remove(os.path.join(package_dir, f)) + for f in os.listdir(package_dir): + if f.startswith('makes'): + os.remove(os.path.join(package_dir, f)) except: - sys.stderr.write('Failed to copy install directory: ' + sys.exc_info()[0] + '\n') - sys.exit(1) + sys.stderr.write('Failed to copy install directory: ' + sys.exc_info()[0] + '\n') + sys.exit(1) # create archive try: - if not os.path.exists(output_dir): - os.mkdir(output_dir) + if not os.path.exists(output_dir): + os.mkdir(output_dir) - if extension == 'zip': - archive_cmd = ['zip', '-9', '-r', package_archive, package_dir] - elif extension == 'tar.bz2': - archive_cmd = ['tar', 'cjf', package_archive, package_dir] - else: - sys.stderr.write('Unknown archive extension: ' + extension) - sys.exit(-1) + if extension == 'zip': + archive_cmd = ['zip', '-9', '-r', package_archive, package_dir] + elif extension == 'tar.bz2': + archive_cmd = ['tar', 'cjf', package_archive, package_dir] + else: + sys.stderr.write('Unknown archive extension: ' + extension) + sys.exit(-1) - subprocess.call(archive_cmd) + subprocess.call(archive_cmd) except: - sys.stderr.write('Failed to create package archive: ' + sys.exc_info()[0] + '\n') - sys.exit(1) + sys.stderr.write('Failed to create package archive: ' + sys.exc_info()[0] + '\n') + sys.exit(1) # empty temporary package dir try: - shutil.rmtree(package_dir) + shutil.rmtree(package_dir) except: - sys.stderr.write('Failed to clean up package directory: ' + sys.exc_info()[0] + '\n') - sys.exit(1) - + sys.stderr.write('Failed to clean up package directory: ' + sys.exc_info()[0] + '\n') + sys.exit(1) diff --git a/source/blender/editors/gpencil/gpencil_edit.c b/source/blender/editors/gpencil/gpencil_edit.c index f1be2ae9a64..e9154b59ebf 100644 --- a/source/blender/editors/gpencil/gpencil_edit.c +++ b/source/blender/editors/gpencil/gpencil_edit.c @@ -488,7 +488,7 @@ static void gp_stroke_to_bezier (bContext *C, bGPDlayer *gpl, bGPDstroke *gps, C copy_v3_v3(p3d_prev, p3d_cur); copy_v3_v3(p3d_cur, p3d_next); - if (i < tot) { + if (i + 1 < tot) { gp_strokepoint_convertcoords(C, gps, pt+1, p3d_next); } } -- cgit v1.2.3