[Bf-blender-cvs] [5f14bc1] master: GPencil: Fix segment fault when undo
Commit: 5f14bc1b47f3949cb5929153fcbb1916dc6cc0a8 Author: Antonioya Date: Mon Aug 29 22:17:57 2016 +0200 Branches: master https://developer.blender.org/rB5f14bc1b47f3949cb5929153fcbb1916dc6cc0a8 GPencil: Fix segment fault when undo When undo in UV/Image editor and press ESC key, there was segment fault in Toolsettings because the reference was missing. Now the toolsetting is loaded from context and not from local operator data. === M source/blender/editors/gpencil/gpencil_paint.c === diff --git a/source/blender/editors/gpencil/gpencil_paint.c b/source/blender/editors/gpencil/gpencil_paint.c index 70a4b29..cc45cbd 100644 --- a/source/blender/editors/gpencil/gpencil_paint.c +++ b/source/blender/editors/gpencil/gpencil_paint.c @@ -2310,6 +2310,7 @@ static void gpencil_move_last_stroke_to_back(bContext *C) static int gpencil_draw_modal(bContext *C, wmOperator *op, const wmEvent *event) { tGPsdata *p = op->customdata; + ToolSettings *ts = CTX_data_tool_settings(C); int estate = OPERATOR_PASS_THROUGH; /* default exit state - pass through to support MMB view nav, etc. */ /* if (event->type == NDOF_MOTION) @@ -2363,9 +2364,11 @@ static int gpencil_draw_modal(bContext *C, wmOperator *op, const wmEvent *event) /* exit() ends the current stroke before cleaning up */ /* printf("\t\tGP - end of paint op + end of stroke\n"); */ /* if drawing polygon and enable on back, must move stroke */ - if ((p->scene->toolsettings->gpencil_flags & GP_TOOL_FLAG_PAINT_ONBACK) && (p->paintmode == GP_PAINTMODE_DRAW_POLY)) { - if (p->flags & GP_PAINTFLAG_STROKEADDED) { - gpencil_move_last_stroke_to_back(C); + if (ts) { + if ((ts->gpencil_flags & GP_TOOL_FLAG_PAINT_ONBACK) && (p->paintmode == GP_PAINTMODE_DRAW_POLY)) { + if (p->flags & GP_PAINTFLAG_STROKEADDED) { + gpencil_move_last_stroke_to_back(C); + } } } p->status = GP_STATUS_DONE; @@ -2425,9 +2428,11 @@ static int gpencil_draw_modal(bContext *C, wmOperator *op, const wmEvent *event) else { /* printf("\t\tGP - end of stroke + op\n"); */ /* if drawing polygon and enable on back, must move stroke */ - if ((p->scene->toolsettings->gpencil_flags & GP_TOOL_FLAG_PAINT_ONBACK) && (p->paintmode == GP_PAINTMODE_DRAW_POLY)) { - if (p->flags & GP_PAINTFLAG_STROKEADDED) { - gpencil_move_last_stroke_to_back(C); + if (ts) { + if ((ts->gpencil_flags & GP_TOOL_FLAG_PAINT_ONBACK) && (p->paintmode == GP_PAINTMODE_DRAW_POLY)) { + if (p->flags & GP_PAINTFLAG_STROKEADDED) { + gpencil_move_last_stroke_to_back(C); + } } } p->status = GP_STATUS_DONE; @@ -2511,9 +2516,11 @@ static int gpencil_draw_modal(bContext *C, wmOperator *op, const wmEvent *event) * region (as above) */ /* if drawing polygon and enable on back, must move stroke */ - if ((p->scene->toolsettings->gpencil_flags & GP_TOOL_FLAG_PAINT_ONBACK) && (p->paintmode == GP_PAINTMODE_DRAW_POLY)) { - if (p->flags & GP_PAINTFLAG_STROKEADDED) { - gpencil_move_last_stroke_to_back(C); + if (ts) { + if ((ts->gpencil_flags & GP_TOOL_FLAG_PAINT_ONBACK) && (p->paintmode == GP_PAINTMODE_DRAW_POLY)) { + if (p->flags & GP_PAINTFLAG_STROKEADDED) { + gpencil_move_last_stroke_to_back(C); + } } } p->status = GP_STATUS_DONE; ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [fa092da] master: GPencil: Replace strcpy by BLI_strncpy
Commit: fa092da37700b15374db50803bd7afe2a407bb55 Author: Antonioya Date: Mon Aug 29 21:55:02 2016 +0200 Branches: master https://developer.blender.org/rBfa092da37700b15374db50803bd7afe2a407bb55 GPencil: Replace strcpy by BLI_strncpy === M source/blender/editors/space_view3d/view3d_ruler.c === diff --git a/source/blender/editors/space_view3d/view3d_ruler.c b/source/blender/editors/space_view3d/view3d_ruler.c index 67a40ae..3c13ab9 100644 --- a/source/blender/editors/space_view3d/view3d_ruler.c +++ b/source/blender/editors/space_view3d/view3d_ruler.c @@ -357,7 +357,7 @@ static bool view3d_ruler_to_gpencil(bContext *C, RulerInfo *ruler_info) gps->flag = GP_STROKE_3DSPACE; gps->thickness = 3; /* assign color to stroke */ - strcpy(gps->colorname, palcolor->info); + BLI_strncpy(gps->colorname, palcolor->info, sizeof(gps->colorname)); gps->palcolor = palcolor; BLI_addtail(>strokes, gps); changed = true; ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [5c04b4f] master: Fix T49196
Commit: 5c04b4fdfb0c914889ddcf2202712e39e08d8946 Author: lazydodo Date: Mon Aug 29 13:33:01 2016 -0600 Branches: master https://developer.blender.org/rB5c04b4fdfb0c914889ddcf2202712e39e08d8946 Fix T49196 === M source/gameengine/GamePlayer/ghost/CMakeLists.txt === diff --git a/source/gameengine/GamePlayer/ghost/CMakeLists.txt b/source/gameengine/GamePlayer/ghost/CMakeLists.txt index 6c09af3..577e25d 100644 --- a/source/gameengine/GamePlayer/ghost/CMakeLists.txt +++ b/source/gameengine/GamePlayer/ghost/CMakeLists.txt @@ -81,6 +81,10 @@ if(WIN32) blender_include_dirs(../../../../intern/utfconv) endif() +if(WITH_INPUT_NDOF) + add_definitions(-DWITH_INPUT_NDOF) +endif(WITH_INPUT_NDOF) + if(WITH_CODEC_FFMPEG) add_definitions(-DWITH_FFMPEG) endif() ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [ae3d5dd] asset-engine: First (totally experimental and useless) version of a future 'BlenderCloud' asset engine.
Commit: ae3d5ddc7d1104b937761a7dbf8cce7246b9b94e Author: Bastien Montagne Date: Mon Aug 29 17:10:39 2016 +0200 Branches: asset-engine https://developer.blender.org/rBae3d5ddc7d1104b937761a7dbf8cce7246b9b94e First (totally experimental and useless) version of a future 'BlenderCloud' asset engine. For now it's nothing but an empty shell - but a working proof of concept of how to 'embed' that ugly asyncio-based stuff into a background working thread for asset engines. Hopefully more funny stuff to come soon(ish). === M release/scripts/startup/bl_operators/__init__.py A release/scripts/startup/bl_operators/claude/__init__.py A release/scripts/startup/bl_operators/claude/appdirs.py A release/scripts/startup/bl_operators/claude/cache.py A release/scripts/startup/bl_operators/claude/pillar.py A release/scripts/startup/bl_operators/claude/texture_browser.py A release/scripts/startup/bl_operators/claude/wheels/CacheControl-0.11.6-py3-none-any.whl A release/scripts/startup/bl_operators/claude/wheels/__init__.py A release/scripts/startup/bl_operators/claude/wheels/lockfile-0.12.2-py2.py3-none-any.whl A release/scripts/startup/bl_operators/claude/wheels/pillarsdk-1.2.0-py2.py3-none-any.whl A release/scripts/startup/bl_operators/claude/wheels/pillarsdk-1.4.0-py2.py3-none-any.whl === diff --git a/release/scripts/startup/bl_operators/__init__.py b/release/scripts/startup/bl_operators/__init__.py index 1fb7868..0b13200 100644 --- a/release/scripts/startup/bl_operators/__init__.py +++ b/release/scripts/startup/bl_operators/__init__.py @@ -53,6 +53,7 @@ _modules = [ _modules.append("amber") _modules.append("amber_asyncio") +_modules.append("claude") import bpy diff --git a/release/scripts/startup/bl_operators/claude/__init__.py b/release/scripts/startup/bl_operators/claude/__init__.py new file mode 100644 index 000..1a64ae2 --- /dev/null +++ b/release/scripts/startup/bl_operators/claude/__init__.py @@ -0,0 +1,437 @@ +# # BEGIN GPL LICENSE BLOCK # +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# # END GPL LICENSE BLOCK # + +# + +# Blender Cloud Asset Engine, using Pillar and based on the Cloud addon. +# "Claude" (French first name pronounced in a similar way as “cloud”) stands for Cloud Light Asset Under Development Engine. +# Note: This will be a simple addon later, but until it gets to master, it's simpler to have it as a startup module! + +import bpy +from bpy.types import ( +AssetEngine, +Panel, +PropertyGroup, +) +from bpy.props import ( +StringProperty, +BoolProperty, +IntProperty, +FloatProperty, +EnumProperty, +CollectionProperty, +) + +# Support reloading +if 'pillar' in locals(): +import importlib + +wheels = importlib.reload(wheels) +wheels.load_wheels() + +pillar = importlib.reload(pillar) +cache = importlib.reload(cache) +else: +from . import wheels + +wheels.load_wheels() + +from . import pillar, cache + +import concurrent.futures as futures +import asyncio +import threading + +import binascii +import hashlib +import json +import os +import stat +import struct +import time +import random + +import pillarsdk +from . import pillar, cache + +REQUIRED_ROLES_FOR_TEXTURE_BROWSER = {'subscriber', 'demo'} + + +## +# Helpers. + + +# +# Claude Jobs. +class ClaudeJob: +@staticmethod +async def check_loop(loop, evt_cancel): +"""Async function merely endlessly checking 'cancel' flag is not set, and stopping the loop in case it is...""" +while True: +if evt_cancel.is_set(): +print("CAAANNCCCLE!") +loop.stop() +return +await asyncio.sleep(1e-6) + +@classmethod +def run_loop(cls, loop, evt_cancel): +"""Function called in worker thread, sets the loop for current thread, and runs it.""" +asyncio.set_event_loop(loop) +asyncio.ensure_future(cls.check_loop(loop, evt_cancel)) +loop.run_forever() +loop.close() + +
[Bf-blender-cvs] [9897132] asset-engine: Merge branch 'master' into asset-enginea, and update for new 'checkdir' behavior/expectations.
Commit: 989713273137f0c76f85b6f60aedd5900aa46246 Author: Bastien Montagne Date: Mon Aug 29 17:05:45 2016 +0200 Branches: asset-engine https://developer.blender.org/rB989713273137f0c76f85b6f60aedd5900aa46246 Merge branch 'master' into asset-enginea, and update for new 'checkdir' behavior/expectations. Conflicts: source/blender/editors/space_file/filelist.c === === diff --cc release/scripts/startup/bl_operators/amber.py index d78fc6a,000..36c83ea mode 100644,00..100644 --- a/release/scripts/startup/bl_operators/amber.py +++ b/release/scripts/startup/bl_operators/amber.py @@@ -1,793 -1,0 +1,793 @@@ +# # BEGIN GPL LICENSE BLOCK # +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# # END GPL LICENSE BLOCK # + +# + +# Note: This will be a simple addon later, but until it gets to master, it's simpler to have it +# as a startup module! + +import bpy +from bpy.types import ( +AssetEngine, +Panel, +PropertyGroup, +UIList, +) +from bpy.props import ( +StringProperty, +BoolProperty, +IntProperty, +FloatProperty, +EnumProperty, +CollectionProperty, +) + +import binascii +import concurrent.futures as futures +import hashlib +import json +import os +import stat +import struct +import time +import random + + +AMBER_DB_NAME = "__amber_db.json" +AMBER_DBK_VERSION = "version" + + +## +# Helpers. + +# Notes about UUIDs: +#* UUID of an asset/variant/revision is computed once at its creation! Later changes to data do not affect it. +#* Collision, for unlikely it is, may happen across different repositories... +# Doubt this will be practical issue though. +#* We keep eight first bytes of 'clear' identifier, to (try to) keep some readable uuid. + +def _uuid_gen_single(used_uuids, uuid_root, h, str_arg): +h.update(str_arg.encode()) +uuid = uuid_root + h.digest() +uuid = uuid[:23].replace(b'\0', b'\1') # No null chars, RNA 'bytes' use them as in regular strings... :/ +if uuid not in used_uuids: # *Very* likely, but... +used_uuids.add(uuid) +return uuid +return None + + +def _uuid_gen(used_uuids, uuid_root, bytes_seed, *str_args): +h = hashlib.md5(bytes_seed) +for arg in str_args: +uuid = _uuid_gen_single(used_uuids, uuid_root, h, arg) +if uuid is not None: +return uuid +# This is a fallback in case we'd get a collision... Should never be needed in real life! +for i in range(10): +uuid = _uuid_gen_single(used_uuids, uuid_root, h, i.to_bytes(4, 'little')) +if uuid is not None: +return uuid +return None # If this happens... + + +def uuid_asset_gen(used_uuids, path_db, name, tags): +uuid_root = name.encode()[:8] + b'|' +return _uuid_gen_single(used_uuids, uuid_root, path_db.encode(), name, *tags) + + +def uuid_variant_gen(used_uuids, asset_uuid, name): +uuid_root = name.encode()[:8] + b'|' +return _uuid_gen_single(used_uuids, uuid_root, asset_uuid, name) + + +def uuid_revision_gen(used_uuids, variant_uuid, number, size, time): +uuid_root = str(number).encode() + b'|' +return _uuid_gen_single(used_uuids, uuid_root, variant_uuid, str(number), str(size), str(timestamp)) + + +def uuid_unpack_bytes(uuid_bytes): +return struct.unpack("!", uuid_bytes.ljust(16, b'\0')) + + +def uuid_unpack(uuid_hexstr): +return uuid_unpack_bytes(binascii.unhexlify(uuid_hexstr)) + + +def uuid_unpack_asset(uuid_repo_hexstr, uuid_asset_hexstr): +return uuid_unpack_bytes(binascii.unhexlify(uuid_repo_hexstr).ljust(8, b'\0') + + binascii.unhexlify(uuid_asset_hexstr).ljust(8, b'\0')) + + +def uuid_pack(uuid_iv4): +print(uuid_iv4) +return binascii.hexlify(struct.pack("!", *uuid_iv4)) + + +# XXX Hack, once this becomes a real addon we'll just use addons' config system, for now store that in some own config. +amber_repos_path = os.path.join(bpy.utils.user_resource('CONFIG',
[Bf-blender-cvs] [2090ed1] master: Cleanup/refactor spacefile's 'check dir' code.
Commit: 2090ed164f674f9b3e29975e7d902eeacae3e55f Author: Bastien Montagne Date: Mon Aug 29 16:42:49 2016 +0200 Branches: master https://developer.blender.org/rB2090ed164f674f9b3e29975e7d902eeacae3e55f Cleanup/refactor spacefile's 'check dir' code. Was kinda split in two different places (one allowed to modify given path to always get a valid one, the other only checking for validity of given path), not nice - and broken in asset branch case. So rather extended a bit FileList->checkdirf to handle both cases (modifying and non-modifying path). === M source/blender/editors/space_file/file_intern.h M source/blender/editors/space_file/file_ops.c M source/blender/editors/space_file/file_utils.c M source/blender/editors/space_file/filelist.c M source/blender/editors/space_file/filelist.h M source/blender/editors/space_file/filesel.c === diff --git a/source/blender/editors/space_file/file_intern.h b/source/blender/editors/space_file/file_intern.h index a55b18a..71e38f7 100644 --- a/source/blender/editors/space_file/file_intern.h +++ b/source/blender/editors/space_file/file_intern.h @@ -128,7 +128,6 @@ void file_panels_register(struct ARegionType *art); /* file_utils.c */ void file_tile_boundbox(const ARegion *ar, FileLayout *layout, const int file, rcti *r_bounds); -bool file_is_dir(struct SpaceFile *sfile, const char *path); #endif /* __FILE_INTERN_H__ */ diff --git a/source/blender/editors/space_file/file_ops.c b/source/blender/editors/space_file/file_ops.c index c42ff12..9f5e98d 100644 --- a/source/blender/editors/space_file/file_ops.c +++ b/source/blender/editors/space_file/file_ops.c @@ -1894,7 +1894,7 @@ void file_directory_enter_handle(bContext *C, void *UNUSED(arg_unused), void *UN file_expand_directory(C); /* special case, user may have pasted a filepath into the directory */ - if (!file_is_dir(sfile, sfile->params->dir)) { + if (!filelist_is_dir(sfile->files, sfile->params->dir)) { char tdir[FILE_MAX_LIBEXTRA]; char *group, *name; @@ -1920,7 +1920,7 @@ void file_directory_enter_handle(bContext *C, void *UNUSED(arg_unused), void *UN BLI_cleanup_dir(G.main->name, sfile->params->dir); - if (file_is_dir(sfile, sfile->params->dir)) { + if (filelist_is_dir(sfile->files, sfile->params->dir)) { /* if directory exists, enter it immediately */ ED_file_change_dir(C); @@ -1993,7 +1993,7 @@ void file_filename_enter_handle(bContext *C, void *UNUSED(arg_unused), void *arg BLI_join_dirfile(filepath, sizeof(sfile->params->dir), sfile->params->dir, sfile->params->file); /* if directory, open it and empty filename field */ - if (file_is_dir(sfile, filepath)) { + if (filelist_is_dir(sfile->files, filepath)) { BLI_cleanup_dir(G.main->name, filepath); BLI_strncpy(sfile->params->dir, filepath, sizeof(sfile->params->dir)); sfile->params->file[0] = '\0'; diff --git a/source/blender/editors/space_file/file_utils.c b/source/blender/editors/space_file/file_utils.c index f19e301..c1caf5a 100644 --- a/source/blender/editors/space_file/file_utils.c +++ b/source/blender/editors/space_file/file_utils.c @@ -48,17 +48,3 @@ void file_tile_boundbox(const ARegion *ar, FileLayout *layout, const int file, r BLI_rcti_init(r_bounds, xmin, xmin + layout->tile_w + layout->tile_border_x, ymax - layout->tile_h - layout->tile_border_y, ymax); } - -/* Cannot directly use BLI_is_dir in libloading context... */ -bool file_is_dir(struct SpaceFile *sfile, const char *path) -{ - if (sfile->params->type == FILE_LOADLIB) { - char tdir[FILE_MAX_LIBEXTRA]; - char *name; - if (BLO_library_path_explode(sfile->params->dir, tdir, NULL, ) && BLI_is_file(tdir)) { - /* .blend file itself and group are considered as directories, not final datablock names. */ - return name ? false : true; - } - } - return BLI_is_dir(path); -} diff --git a/source/blender/editors/space_file/filelist.c b/source/blender/editors/space_file/filelist.c index b6e4991..1471932 100644 --- a/source/blender/editors/space_file/filelist.c +++ b/source/blender/editors/space_file/filelist.c @@ -309,8 +309,9 @@ typedef struct FileList { struct BlendHandle *libfiledata; - /* Set given path as root directory, may change given string in place to a valid value. */ - void (*checkdirf)(struct FileList *, char *); + /* Set given path as root
[Bf-blender-cvs] [8f215d9] master: Fix for Bevel segments bug T49183; but doesn't fix whole report yet.
Commit: 8f215d9b527681773bb1f02b57d00afc860d8122 Author: Howard Trickey Date: Mon Aug 29 08:51:04 2016 -0400 Branches: master https://developer.blender.org/rB8f215d9b527681773bb1f02b57d00afc860d8122 Fix for Bevel segments bug T49183; but doesn't fix whole report yet. === M source/blender/editors/mesh/editmesh_bevel.c === diff --git a/source/blender/editors/mesh/editmesh_bevel.c b/source/blender/editors/mesh/editmesh_bevel.c index 302ca40..a81add7 100644 --- a/source/blender/editors/mesh/editmesh_bevel.c +++ b/source/blender/editors/mesh/editmesh_bevel.c @@ -145,6 +145,7 @@ static bool edbm_bevel_init(bContext *C, wmOperator *op, const bool is_modal) opdata->em = em; opdata->is_modal = is_modal; opdata->value_mode = OFFSET_VALUE; + opdata->segments = (float) RNA_int_get(op->ptr, "segments"); pixels_per_inch = U.dpi * U.pixelsize; for (i = 0; i < NUM_VALUE_KINDS; i++) { ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [09dc8a7] master: Fix T49181: Movie clip animation lost when invoking action which reloads the clip
Commit: 09dc8a7954a9ded72f5b3b30fcf7953be29301da Author: Sergey Sharybin Date: Mon Aug 29 13:09:03 2016 +0200 Branches: master https://developer.blender.org/rB09dc8a7954a9ded72f5b3b30fcf7953be29301da Fix T49181: Movie clip animation lost when invoking action which reloads the clip Was a bug since the very beginning of movie clip animation support which was done on Feb 2012. === M source/blender/blenkernel/intern/movieclip.c === diff --git a/source/blender/blenkernel/intern/movieclip.c b/source/blender/blenkernel/intern/movieclip.c index 482015d..6794a8e 100644 --- a/source/blender/blenkernel/intern/movieclip.c +++ b/source/blender/blenkernel/intern/movieclip.c @@ -1247,8 +1247,6 @@ static void free_buffers(MovieClip *clip) IMB_free_anim(clip->anim); clip->anim = NULL; } - - BKE_animdata_free((ID *) clip, false); } void BKE_movieclip_clear_cache(MovieClip *clip) @@ -1487,6 +1485,7 @@ void BKE_movieclip_free(MovieClip *clip) free_buffers(clip); BKE_tracking_free(>tracking); + BKE_animdata_free((ID *) clip, false); } MovieClip *BKE_movieclip_copy(Main *bmain, MovieClip *clip) ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [a9f8e38] master: Movie clip: Add missing animation data RNA declaration
Commit: a9f8e384f1b3335e8a87468fdb07678cd8b580fc Author: Sergey Sharybin Date: Mon Aug 29 13:03:50 2016 +0200 Branches: master https://developer.blender.org/rBa9f8e384f1b3335e8a87468fdb07678cd8b580fc Movie clip: Add missing animation data RNA declaration Was missing since the beginning of the days. === M source/blender/makesrna/intern/rna_movieclip.c === diff --git a/source/blender/makesrna/intern/rna_movieclip.c b/source/blender/makesrna/intern/rna_movieclip.c index 19d7836..15411f8 100644 --- a/source/blender/makesrna/intern/rna_movieclip.c +++ b/source/blender/makesrna/intern/rna_movieclip.c @@ -347,6 +347,8 @@ static void rna_def_movieclip(BlenderRNA *brna) RNA_def_property_pointer_sdna(prop, NULL, "colorspace_settings"); RNA_def_property_struct_type(prop, "ColorManagedInputColorspaceSettings"); RNA_def_property_ui_text(prop, "Color Space Settings", "Input color space settings"); + + rna_def_animdata_common(srna); } void RNA_def_movieclip(BlenderRNA *brna) ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [cc2faa4] master: Fix T49172: mixdown sound op not exporting full length
Commit: cc2faa409fc8508fb0131bdc344651f2863957f6 Author: Jörg Müller Date: Mon Aug 29 10:54:32 2016 +0200 Branches: master https://developer.blender.org/rBcc2faa409fc8508fb0131bdc344651f2863957f6 Fix T49172: mixdown sound op not exporting full length Thanks Flavio Perez for the fix. === M source/blender/editors/sound/sound_ops.c === diff --git a/source/blender/editors/sound/sound_ops.c b/source/blender/editors/sound/sound_ops.c index 03f2e14..ac3fc76 100644 --- a/source/blender/editors/sound/sound_ops.c +++ b/source/blender/editors/sound/sound_ops.c @@ -348,10 +348,10 @@ static int sound_mixdown_exec(bContext *C, wmOperator *op) BLI_path_abs(filename, bmain->name); if (split) - result = AUD_mixdown_per_channel(scene->sound_scene, SFRA * specs.rate / FPS, (EFRA - SFRA) * specs.rate / FPS, + result = AUD_mixdown_per_channel(scene->sound_scene, SFRA * specs.rate / FPS, (EFRA - SFRA + 1) * specs.rate / FPS, accuracy, filename, specs, container, codec, bitrate); else - result = AUD_mixdown(scene->sound_scene, SFRA * specs.rate / FPS, (EFRA - SFRA) * specs.rate / FPS, + result = AUD_mixdown(scene->sound_scene, SFRA * specs.rate / FPS, (EFRA - SFRA + 1) * specs.rate / FPS, accuracy, filename, specs, container, codec, bitrate); if (result) { ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [5af58fa] master: Fix compilation error caused by wrong array initialization
Commit: 5af58faf799e3fd19ca9319f7ebef0654967bdc0 Author: Sergey Sharybin Date: Mon Aug 29 09:40:15 2016 +0200 Branches: master https://developer.blender.org/rB5af58faf799e3fd19ca9319f7ebef0654967bdc0 Fix compilation error caused by wrong array initialization We usually don't silence migh-be-uninitialized warning (which is the only thing which could explain setting matrix to all zeroes) so we can catch such errors when using tools like Valgrind. I don't get warning here and the initializer was wrong, so removing it. If it-s _REALLY_ needed please do a proper initialization. === M source/blender/editors/gpencil/gpencil_edit.c === diff --git a/source/blender/editors/gpencil/gpencil_edit.c b/source/blender/editors/gpencil/gpencil_edit.c index 99f4ca2..9f700e8 100644 --- a/source/blender/editors/gpencil/gpencil_edit.c +++ b/source/blender/editors/gpencil/gpencil_edit.c @@ -1894,7 +1894,7 @@ static int gp_strokes_reproject_poll(bContext *C) return (gp_stroke_edit_poll(C) && ED_operator_view3d_active(C)); } -static int gp_strokes_reproject_exec(bContext *C, wmOperator *op) +static int gp_strokes_reproject_exec(bContext *C, wmOperator *UNUSED(op)) { Scene *scene = CTX_data_scene(C); GP_SpaceConversion gsc = {NULL}; @@ -1908,7 +1908,7 @@ static int gp_strokes_reproject_exec(bContext *C, wmOperator *op) if (gps->flag & GP_STROKE_SELECT) { bGPDspoint *pt; int i; - float inverse_diff_mat[4][4] = {0.0f}; + float inverse_diff_mat[4][4]; /* Compute inverse matrix for unapplying parenting once instead of doing per-point */ /* TODO: add this bit to the iteration macro? */ ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs