8170798: Fix minor issues in java2d and sound coding

Reviewed-by: prr, serb
This commit is contained in:
Goetz Lindenmaier 2016-12-06 14:54:11 +01:00
parent f2654d02ec
commit a2cd969a52
7 changed files with 13 additions and 8 deletions

View File

@ -33,13 +33,14 @@
* Generated on: 10/26/2010 02:53:33 PM PDT
*/
#include "LEScripts.h"
#include "LETypes.h"
#include "ScriptAndLanguageTags.h"
#include "OpenTypeLayoutEngine.h"
U_NAMESPACE_BEGIN
const LETag OpenTypeLayoutEngine::scriptTags[] = {
const LETag OpenTypeLayoutEngine::scriptTags[scriptCodeCount] = {
zyyyScriptTag, /* 'zyyy' (COMMON) */
zinhScriptTag, /* 'zinh' (INHERITED) */
arabScriptTag, /* 'arab' (ARABIC) */

View File

@ -302,7 +302,7 @@ le_int32 ThaiShaping::compose(const LEUnicode *input, le_int32 offset, le_int32
le_uint8 charClass;
// Decompose SARA AM into NIKHAHIT + SARA AA
if (ch == CH_SARA_AM && isLegalHere(ch, state)) {
if (ch == CH_SARA_AM && isLegalHere(ch, state) && conState < stateCount) {
outputIndex = conOutput;
state = getNextState(CH_NIKHAHIT, conState, inputIndex, glyphSet, errorChar, charClass,
output, glyphStorage, outputIndex);

View File

@ -80,7 +80,8 @@ public:
tG = 5,
tH = 6,
tR = 7,
tS = 8
tS = 8,
stateCount = 52
};
struct StateTransition
@ -100,7 +101,7 @@ private:
ThaiShaping();
static const le_uint8 classTable[];
static const StateTransition thaiStateTable[][classCount];
static const StateTransition thaiStateTable[stateCount][classCount];
inline static StateTransition getTransition(le_uint8 state, le_uint8 currClass);

View File

@ -49,7 +49,7 @@ const le_uint8 ThaiShaping::classTable[] = {
/*0E50*/ NON, NON, NON, NON, NON, NON, NON, NON, NON, NON, NON, NON
};
const ThaiShaping::StateTransition ThaiShaping::thaiStateTable[][ThaiShaping::classCount] = {
const ThaiShaping::StateTransition ThaiShaping::thaiStateTable[ThaiShaping::stateCount][ThaiShaping::classCount] = {
//+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
//| N C C C L F F F B B B T A A A N A A A |
//| O O O O V V V V V V D O D D D I V V V |

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2003, 2016, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -385,6 +385,7 @@ void PORT_GetControls(void* id, INT32 portIndex, PortControlCreator* creator) {
int isStereo;
char* type;
snd_mixer_selem_channel_id_t channel;
memset(controls, 0, sizeof(controls));
TRACE0("> PORT_GetControls\n");
if (id == NULL) {

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2003, 2016, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -385,6 +385,7 @@ void PORT_GetControls(void* id, INT32 portIndex, PortControlCreator* creator) {
int isStereo;
char* type;
snd_mixer_selem_channel_id_t channel;
memset(controls, 0, sizeof(controls));
TRACE0("> PORT_GetControls\n");
if (id == NULL) {

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2002, 2007, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2002, 2016, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -390,6 +390,7 @@ void PORT_GetControls(void* id, INT32 portIndex, PortControlCreator* creator) {
int controlCount = 0;
INT32 type;
int selectable = 1;
memset(controls, 0, sizeof(controls));
TRACE4(">PORT_GetControls(id=%p, portIndex=%d). controlIDs=%p, maxControlCount=%d\n",
id, portIndex, info->controlIDs, info->maxControlCount);