소스 검색

PacketLineIn: ensure that END != DELIM

Just allocate the two string objects directly. The previously used
new StringBuilder(0).toString() returns the same object for both END
and DELIM when run on Java 15, which breaks the wire protocol since
then END and DELIM cannot be distinguished anymore.

Bug: 568950
Change-Id: I9d54d7bf484948c24b51a094256bd9d38b085f35
Signed-off-by: Thomas Wolf <thomas.wolf@paranor.ch>
tags/v5.10.0.202011251205-m3
Thomas Wolf 3 년 전
부모
커밋
7da0f0a8f3
1개의 변경된 파일5개의 추가작업 그리고 5개의 파일을 삭제
  1. 5
    5
      org.eclipse.jgit/src/org/eclipse/jgit/transport/PacketLineIn.java

+ 5
- 5
org.eclipse.jgit/src/org/eclipse/jgit/transport/PacketLineIn.java 파일 보기

@@ -1,7 +1,7 @@
/*
* Copyright (C) 2008-2010, Google Inc.
* Copyright (C) 2008-2009, Robin Rosenberg <robin.rosenberg@dewire.com>
* Copyright (C) 2008, Shawn O. Pearce <spearce@spearce.org> and others
* Copyright (C) 2008, 2010 Google Inc.
* Copyright (C) 2008, 2009 Robin Rosenberg <robin.rosenberg@dewire.com>
* Copyright (C) 2008, 2020 Shawn O. Pearce <spearce@spearce.org> and others
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Distribution License v. 1.0 which is available at
@@ -50,7 +50,7 @@ public class PacketLineIn {
* strings in the input stream until the marker is reached.
*/
@Deprecated
public static final String END = new StringBuilder(0).toString(); /* must not string pool */
public static final String END = new String(); /* must not string pool */

/**
* Magic return from {@link #readString()} when a delim packet is found.
@@ -60,7 +60,7 @@ public class PacketLineIn {
* string is the delimiter.
*/
@Deprecated
public static final String DELIM = new StringBuilder(0).toString(); /* must not string pool */
public static final String DELIM = new String(); /* must not string pool */

enum AckNackResult {
/** NAK */

Loading…
취소
저장