Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
M
MariaDB
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
nexedi
MariaDB
Commits
972f86f1
Commit
972f86f1
authored
Apr 26, 2005
by
monty@mysql.com
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Cleanups during review
parent
3ca23bd9
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
44 additions
and
34 deletions
+44
-34
mysys/default.c
mysys/default.c
+35
-27
sql/sql_insert.cc
sql/sql_insert.cc
+2
-2
sql/sql_select.cc
sql/sql_select.cc
+7
-5
No files found.
mysys/default.c
View file @
972f86f1
...
...
@@ -402,33 +402,48 @@ static int search_default_file_with_ext(DYNAMIC_ARRAY *args, MEM_ROOT *alloc,
continue
;
/* Configuration File Directives */
if
((
*
ptr
==
'!'
)
&&
(
recursion_level
<
max_recursion_level
)
)
if
((
*
ptr
==
'!'
))
{
if
(
recursion_level
>=
max_recursion_level
)
{
for
(
end
=
ptr
+
strlen
(
ptr
)
-
1
;
my_isspace
(
&
my_charset_latin1
,
*
(
end
-
1
));
end
--
)
{}
end
[
0
]
=
0
;
fprintf
(
stderr
,
"Warning: skipping '%s' directive as maximum include"
"recursion level was reached in file %s at line %d
\n
"
,
ptr
,
name
,
line
);
continue
;
}
/* skip over `!' and following whitespace */
for
(
++
ptr
;
my_isspace
(
&
my_charset_latin1
,
ptr
[
0
]);
ptr
++
)
{}
if
((
!
strncmp
(
ptr
,
includedir_keyword
,
sizeof
(
includedir_keyword
)
-
1
))
&&
my_isspace
(
&
my_charset_latin1
,
ptr
[
sizeof
(
includedir_keyword
)
-
1
]))
if
((
!
strncmp
(
ptr
,
includedir_keyword
,
sizeof
(
includedir_keyword
)
-
1
))
&&
my_isspace
(
&
my_charset_latin1
,
ptr
[
sizeof
(
includedir_keyword
)
-
1
]))
{
/* skip over "includedir" and following whitespace */
for
(
ptr
+=
sizeof
(
includedir_keyword
)
-
1
;
my_isspace
(
&
my_charset_latin1
,
ptr
[
0
]);
ptr
++
)
{}
/*
trim trailing whitespace from directory name */
end
=
ptr
+
strlen
(
ptr
)
-
1
;
/* fgets() stores the newline character in the buffer */
if
((
end
[
0
]
==
'\n'
)
||
(
end
[
0
]
==
'\r'
)
||
my_isspace
(
&
my_charset_latin1
,
end
[
0
]))
{
for
(;
my_isspace
(
&
my_charset_latin1
,
*
(
end
-
1
));
end
--
)
{}
end
[
0
]
=
0
;
}
/*
trim trailing whitespace from directory name
The -1 below is for the newline added by fgets()
Note that my_isspace() is true for \r and \n
*/
for
(
end
=
ptr
+
strlen
(
ptr
)
-
1
;
my_isspace
(
&
my_charset_latin1
,
*
(
end
-
1
));
end
--
)
{}
end
[
0
]
=
0
;
/* print error msg if there is nothing after !includedir directive */
if
(
end
=
=
ptr
)
if
(
end
<
=
ptr
)
{
fprintf
(
stderr
,
"error: Wrong !includedir directive in config "
...
...
@@ -468,8 +483,8 @@ static int search_default_file_with_ext(DYNAMIC_ARRAY *args, MEM_ROOT *alloc,
my_dirend
(
search_dir
);
}
else
if
((
!
strncmp
(
ptr
,
include_keyword
,
sizeof
(
include_keyword
)
-
1
))
&&
my_isspace
(
&
my_charset_latin1
,
ptr
[
sizeof
(
include_keyword
)
-
1
]))
else
if
((
!
strncmp
(
ptr
,
include_keyword
,
sizeof
(
include_keyword
)
-
1
))
&&
my_isspace
(
&
my_charset_latin1
,
ptr
[
sizeof
(
include_keyword
)
-
1
]))
{
/* skip over `include' and following whitespace */
for
(
ptr
+=
sizeof
(
include_keyword
)
-
1
;
...
...
@@ -477,12 +492,13 @@ static int search_default_file_with_ext(DYNAMIC_ARRAY *args, MEM_ROOT *alloc,
{}
/* trim trailing whitespace from filename */
end
=
ptr
+
strlen
(
ptr
)
-
1
;
for
(;
my_isspace
(
&
my_charset_latin1
,
*
(
end
-
1
))
;
end
--
)
for
(
end
=
ptr
+
strlen
(
ptr
)
-
1
;
my_isspace
(
&
my_charset_latin1
,
*
(
end
-
1
));
end
--
)
{}
end
[
0
]
=
0
;
if
(
end
=
=
ptr
)
if
(
end
<
=
ptr
)
{
fprintf
(
stderr
,
"error: Wrong !include directive in config "
...
...
@@ -497,14 +513,6 @@ static int search_default_file_with_ext(DYNAMIC_ARRAY *args, MEM_ROOT *alloc,
continue
;
}
else
if
(
recursion_level
>=
max_recursion_level
)
{
fprintf
(
stderr
,
"warning: skipping !include directive as maximum include"
"recursion level was reached in file %s at line %d
\n
"
,
name
,
line
);
}
if
(
*
ptr
==
'['
)
/* Group name */
{
...
...
sql/sql_insert.cc
View file @
972f86f1
...
...
@@ -72,7 +72,7 @@ static int check_insert_fields(THD *thd, TABLE *table, List<Item> &fields,
{
my_printf_error
(
ER_WRONG_VALUE_COUNT_ON_ROW
,
ER
(
ER_WRONG_VALUE_COUNT_ON_ROW
),
MYF
(
0
),
1
);
MYF
(
0
),
1
L
);
return
-
1
;
}
#ifndef NO_EMBEDDED_ACCESS_CHECKS
...
...
@@ -89,7 +89,7 @@ static int check_insert_fields(THD *thd, TABLE *table, List<Item> &fields,
{
my_printf_error
(
ER_WRONG_VALUE_COUNT_ON_ROW
,
ER
(
ER_WRONG_VALUE_COUNT_ON_ROW
),
MYF
(
0
),
1
);
MYF
(
0
),
1
L
);
return
-
1
;
}
TABLE_LIST
table_list
;
...
...
sql/sql_select.cc
View file @
972f86f1
...
...
@@ -2055,8 +2055,8 @@ merge_key_fields(KEY_FIELD *start,KEY_FIELD *new_fields,KEY_FIELD *end,
KEY_OPTIMIZE_EXISTS
)
|
((
old
->
optimize
|
new_fields
->
optimize
)
&
KEY_OPTIMIZE_REF_OR_NULL
));
old
->
null_rejecting
=
old
->
null_rejecting
&&
new_fields
->
null_rejecting
;
old
->
null_rejecting
=
(
old
->
null_rejecting
&&
new_fields
->
null_rejecting
)
;
}
}
else
if
(
old
->
eq_func
&&
new_fields
->
eq_func
&&
...
...
@@ -2068,8 +2068,8 @@ merge_key_fields(KEY_FIELD *start,KEY_FIELD *new_fields,KEY_FIELD *end,
KEY_OPTIMIZE_EXISTS
)
|
((
old
->
optimize
|
new_fields
->
optimize
)
&
KEY_OPTIMIZE_REF_OR_NULL
));
old
->
null_rejecting
=
old
->
null_rejecting
&&
new_fields
->
null_rejecting
;
old
->
null_rejecting
=
(
old
->
null_rejecting
&&
new_fields
->
null_rejecting
)
;
}
else
if
(
old
->
eq_func
&&
new_fields
->
eq_func
&&
(
old
->
val
->
is_null
()
||
new_fields
->
val
->
is_null
()))
...
...
@@ -2081,7 +2081,7 @@ merge_key_fields(KEY_FIELD *start,KEY_FIELD *new_fields,KEY_FIELD *end,
if
(
old
->
val
->
is_null
())
old
->
val
=
new_fields
->
val
;
/* The referred expression can be NULL: */
old
->
null_rejecting
=
false
;
old
->
null_rejecting
=
0
;
}
else
{
...
...
@@ -2242,6 +2242,8 @@ add_key_field(KEY_FIELD **key_fields,uint and_level, Item_func *cond,
If the condition has form "tbl.keypart = othertbl.field" and
othertbl.field can be NULL, there will be no matches if othertbl.field
has NULL value.
We use null_rejecting in add_not_null_conds() to add
'othertbl.field IS NOT NULL' to tab->select_cond.
*/
(
*
key_fields
)
->
null_rejecting
=
(
cond
->
functype
()
==
Item_func
::
EQ_FUNC
)
&&
((
*
value
)
->
type
()
==
Item
::
FIELD_ITEM
)
&&
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment