Module: wine Branch: master Commit: 8fb52c7c5d711918fadf2590061d668093d14708 URL: http://source.winehq.org/git/wine.git/?a=commit;h=8fb52c7c5d711918fadf259006...
Author: Hermès Bélusca-Maïto hermes.belusca@sfr.fr Date: Tue Mar 25 14:31:16 2014 +0100
usp10: Avoid non-standard array initialization.
---
dlls/usp10/bidi.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/dlls/usp10/bidi.c b/dlls/usp10/bidi.c index ceb498e..3962671 100644 --- a/dlls/usp10/bidi.c +++ b/dlls/usp10/bidi.c @@ -827,10 +827,13 @@ static void resolveResolved(unsigned baselevel, const WORD * pcls, WORD *plevel, static void computeIsolatingRunsSet(unsigned baselevel, WORD *pcls, WORD *pLevel, int uCount, struct list *set) { int run_start, run_end, i; - Run runs[uCount]; int run_count = 0; + Run *runs; IsolatedRun *current_isolated;
+ runs = HeapAlloc(GetProcessHeap(), 0, uCount * sizeof(Run)); + if (!runs) return; + list_init(set);
/* Build Runs */ @@ -857,6 +860,7 @@ static void computeIsolatingRunsSet(unsigned baselevel, WORD *pcls, WORD *pLevel int type_fence, real_end; int j; current_isolated = HeapAlloc(GetProcessHeap(), 0, sizeof(IsolatedRun) + sizeof(WORD*)*uCount); + if (!current_isolated) break;
run_start = runs[k].start; current_isolated->e = runs[k].e; @@ -944,6 +948,8 @@ search: } i++; } + + HeapFree(GetProcessHeap(), 0, runs); }
/*************************************************************